home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / draft-newnan-isomib-internet-01.txt < prev    next >
Text File  |  1993-04-05  |  168KB  |  4,028 lines

  1.  
  2.  
  3.  
  4.             INTERNET DRAFT                       Expires August 27, 1993
  5.  
  6.  
  7.  
  8.                 ISO/CCITT and Internet Management Coexistence (IIMC):
  9.  
  10.                  Translation of ISO/CCITT GDMO MIBs to Internet MIBs
  11.  
  12.                                    (IIMCOMIBTRANS)
  13.  
  14.  
  15.                                    March 26, 1993
  16.  
  17.  
  18.                                 Owen Newnan (Editor)
  19.  
  20.                            U S WEST Advanced Technologies
  21.                            4001 Discovery Lane, Suite 190
  22.                                Boulder, Colorado 80303
  23.                            onewnan@atqm.advtech.uswest.com
  24.  
  25.  
  26.  
  27.             Status of this Memo
  28.  
  29.             This document provides information to the network and
  30.             systems management community.  This document is intended as
  31.             a contribution to ongoing work in the area of multi-protocol
  32.             management coexistence and interworking.  This document is
  33.             part of a package; see also [IIMCIMIBTRANS] [IIMCMIB-II]
  34.             [IIMCPROXY] and [IIMCSEC]. Distribution of this document is
  35.             unlimited. Comments should be sent to the Network Management
  36.             Forum IIMC working group (iimc@thumper.bellcore.com).
  37.  
  38.             This document is an Internet Draft.  Internet Drafts are
  39.             working documents of the Internet Engineering Task Force
  40.             (IETF), its Areas, and its Working Groups.  Note that other
  41.             groups may also distribute working documents as Internet
  42.             Drafts.
  43.  
  44.             Internet Drafts are draft documents valid for a maximum of
  45.             six months. Internet Drafts may be updated, replaced, or
  46.             obsoleted by other documents at any time.  It is not
  47.             appropriate to use Internet Drafts as reference material or
  48.             to cite them other than as a ``working draft'' or ``work in
  49.             progress.''
  50.  
  51.             Please check the 1id-abstracts.txt listing contained in the
  52.             internet-drafts Shadow Directories on nic.ddn.mil,
  53.             nnsc.nsf.net, nic.nordu.net, ftp.nisc.sri.com, munnari.oz.au
  54.             to learn the current status of any Internet Draft.
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.             Newnan             Expires August 27, 1993            Page i
  63.  
  64.  
  65.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  66.  
  67.  
  68.  
  69.             Abstract
  70.  
  71.             This document is intended to facilitate the use of ISO/CCITT
  72.             MIBs for integrated management of networks via proxy
  73.             management of TCP/IP networks that are managed using SNMP.
  74.             This document provides heuristic procedures that translate
  75.             managed object specifications from ISO/CCITT Guidelines for
  76.             Definition of Managed Object (GDMO) templates to Internet
  77.             MIB macros.  Currently, some market segments demand SNMP for
  78.             customer network management, while others require the
  79.             ISO/CCITT Common Management Information Protocol (CMIP).
  80.             The  approach defined in this document accommodates both,
  81.             protecting investment already made in management information
  82.             specifications and minimizing cost to implement a second
  83.             protocol where the market requires.  This translation is
  84.             designed to: lose as little functionality as possible in
  85.             translation; minimize need for human involvement during
  86.             translation; minimize cost to implement dual protocol and
  87.             proxy-based applications; and support generic network models
  88.             that span many computer platforms and network elements.
  89.             This document in intended to encourage standardization of
  90.             such an approach and promote consistent usage of MIB
  91.             definitions, independent of protocol.
  92.  
  93.             Table of Contents
  94.  
  95.             Status of this Memo ......................................i
  96.             Revision History .........................................iii
  97.             1. Introduction ..........................................1
  98.             1.1 Background ...........................................1
  99.             1.2 Overview .............................................2
  100.             1.3 Scope ................................................4
  101.             1.4 Terms and Conventions ................................6
  102.             2. Translation Procedures ................................6
  103.             2.1 Relationship to RFC 1212 .............................6
  104.             2.2 Mapping of Managed Object Classes and Attributes .....7
  105.             2.3 Mapping to the SYNTAX clause .........................15
  106.             2.4 Generation of Internet MIB Identifiers ...............18
  107.             2.5 Mapping to the ACCESS clause .........................21
  108.             2.6 Mapping to the STATUS clause .........................21
  109.             2.7 Mapping to the DESCRIPTION clause ....................22
  110.             2.8 Mapping to the REFERENCE clause ......................22
  111.             2.9 Mapping to the INDEX clause ..........................23
  112.             2.10 Mapping to the DEFVAL clause ........................23
  113.             2.11 Mapping of Actions ..................................23
  114.             2.12 Translation of Notifications ........................24
  115.             2.13 Mapping of Delete Operations ........................27
  116.             2.14 Translation of Create Operations ....................28
  117.             3. Constraints on SNMP Usage .............................29
  118.             4. Summary ...............................................31
  119.             5. Acknowledgments .......................................32
  120.             Appendix A Abridged Example ..............................36
  121.             Appendix B Abridged ISO/CCITT Compatibility MIB ..........46
  122.  
  123.             Newnan         Expires August 27, 1993            Page ii
  124.  
  125.  
  126.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  127.  
  128.  
  129.  
  130.             Revision History
  131.  
  132.             Draft 0 - October 9, 1992
  133.                  Initial draft of this document.
  134.  
  135.             Draft 1 - March 26, 1993
  136.                  Current draft of this document (replaces Draft 0).
  137.  
  138.             Major Changes Since Last Revision
  139.  
  140.             At the IIMC meeting of February 8-9, 1993, the editor was
  141.             instructed to make revisions and supply proposed text in
  142.             certain areas for the next draft of this document. Those
  143.             changes have been applied to Draft 0 in arriving at this
  144.             draft (Draft 1). Following is a summary of the edits
  145.             applied:
  146.  
  147.             1.   Auto-registry of generated ASN.1 Modules was added
  148.                  to translation of notifications.
  149.             2.   Index Usage in Translated MIBs was clarified.
  150.             3.   An algorithm is provided for mapping notifications
  151.                  to traps and Appendix B is largely      rewritten to
  152.                  provide the example output, derived from ISO 10165-
  153.                  2 (DMI). In the process, several miscellaneous
  154.                  errors were corrected.
  155.             4.   The "OSI Compatibility MIB" was renamed "ISO/CCITT
  156.                  Convergence MIB". (Alignment with the name of the
  157.                  ISO/CCITT Proxy MIB should also be considered).
  158.             5.   Objectives have been clarified to indicate that
  159.                  SNMPv2 is in the scope of the first Issue of this
  160.                  document, and pragmas are not.
  161.             6.   Machine Readable Conventions for REFERENCE Values
  162.                  have been specified to facilitate mechanized
  163.                  translation.
  164.             7.   Translating the attributes of ISO/CCITT Top have
  165.                  been clarified. The NAME BINDING table provides the
  166.                  only attribute of Top that appears to be needed.
  167.  
  168.             Action Item Proposals Contained In This Document
  169.  
  170.             #19 Current Issues List
  171.  
  172.             Outstanding Issues
  173.  
  174.             The following actions were identified at the February IIMC
  175.             meeting, but have not yet been addressed in this draft.
  176.             Proposals in these areas would be most welcome.
  177.  
  178.             #21 A More Extensive Example for Appendix A.
  179.             #20 Add support for SNMPv2.
  180.  
  181.  
  182.  
  183.  
  184.             Newnan         Expires August 27, 1993            Page iii
  185.  
  186.  
  187.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  188.  
  189.  
  190.             1.Introduction
  191.  
  192.             The past decade has witnessed the development of enterprise
  193.             wide networks composed of a multi-vendor environment
  194.             containing heterogeneous protocol and hardware suites.
  195.             Organizations have become increasingly dependent on these
  196.             enterprise networks for their daily operations.  This
  197.             dependence has focused attention on the need for operation,
  198.             administration, maintenance, and provisioning (OAM&P) of the
  199.             multi-vendor enterprise network on an end-to-end basis.
  200.  
  201.             1.1 Background
  202.  
  203.             This document is part of a package of ISO/CCITT and Internet
  204.             Management Coexistence (IIMC) drafts.  Other documents
  205.             included in this package are:
  206.  
  207.             [IIMCIMIBTRANS]     Translation of Internet MIBs to
  208.                                 ISO/CCITT GDMO MIBs
  209.  
  210.             [IIMCMIB-II]        Translation of Internet MIB-II(RFC 1213)
  211.                                 to ISO/CCITT GDMO MIB
  212.  
  213.             [IIMCSEC]           ISO/CCITT to Internet Management
  214.                                 Security
  215.  
  216.             [IIMCPROXY]         ISO/CCITT to Internet Management Proxy
  217.  
  218.             These documents together comprise a package aimed at
  219.             integrating ISO/CCITT-based and Internet-based management
  220.             systems.  These documents represent coexistence and
  221.             interworking efforts underway within the IIMC working group,
  222.             chartered under the auspices of the Network Management Forum
  223.             Architecture Integration ISO/Internet technical team.
  224.  
  225.             This work was initiated, in part, by NM Forum efforts to
  226.             translate RFC 1214 for use with OMNIPoint 1 implementations.
  227.             Through this effort, it became obvious that end-to-end
  228.             management requires an integrated, unified view of the
  229.             managed network, despite differences in management protocol
  230.             and information structure.  Integrated management can be
  231.             facilitated by the development of "proxy" mechanisms which
  232.             translate between functionally equivalent service, protocol,
  233.             and SMI differences to create this unified view.  MIB
  234.             translation procedures can be used to support proxy
  235.             management, as well as to take advantage of existing MIB
  236.             definition and avoid duplication of effort. In this way,
  237.             commercial investment in both ISO/CCITT and Internet-based
  238.             management technologies can be preserved through deployment
  239.             of common methods and tools which support integration.
  240.  
  241.             This overall strategy was outlined in a joint publication
  242.             developed by the NM Forum and X/Open entitled "ISO/CCITT and
  243.             Internet Management: Coexistence and Interworking Strategy"
  244.  
  245.             Newnan             Expires August 27, 1993            Page 1
  246.  
  247.  
  248.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  249.  
  250.  
  251.             [NMFMC92].  The documents included in the IIMC package are
  252.             the next level of detailed specifications which implement
  253.             several of the methodologies identified in the strategy.
  254.  
  255.             1.2 Overview
  256.  
  257.             The response to the need for OAM&P of enterprise networks
  258.             has been the development of network management standards
  259.             within various networking communities - most notably the
  260.             ISO/CCITT and Internet communities. However, coordination of
  261.             standards activities between these two communities has not
  262.             occurred.  As a result, although they share a nearly common
  263.             management model, differences in their management protocols
  264.             and structures of management information (SMIs) have
  265.             developed due to differing management philosophies.
  266.  
  267.             The ISO/CCITT community has developed the Common Management
  268.             Information Protocol (CMIP) [ISO9596-1], and related SMI
  269.             documents [ISO10165-1,2,4].  The Internet community has
  270.             developed the Simple Network Management Protocol (SNMP)
  271.             [RFC1157], and its successor, SNMPv2 [SNMPv2PROT]. The
  272.             Internet SMI is defined in [RFC1155] and [SNMPv2SMI].
  273.             Although functionally similar, the Internet and ISO/CCITT
  274.             protocols and SMIs differ in terms of their complexity and
  275.             specific operations.
  276.  
  277.             The focus on the need for end-to-end enterprise management
  278.             has indicated the need to integrate the management of
  279.             components accessed by ISO/CCITT management, Internet
  280.             management and proprietary management mechanisms in a manner
  281.             which presents a unified view of the network, despite
  282.             protocol and SMI differences.  One way to integrate
  283.             management is by the development of "proxy" mechanisms which
  284.             translate between functionally equivalent services, protocol
  285.             and SMI differences to create this unified view.
  286.  
  287.             A body of telecommunications and computer vendors,
  288.             represented by organizations such as the Network Management
  289.             Forum (NMF), and the U.S. government, as specified in the
  290.             Government Network Management Profile (GNMP) have based
  291.             their integrated management model on the ISO/CCITT
  292.             management model using CMIP and the ISO/CCITT SMI.  These
  293.             organizations are particularly interested in the development
  294.             of proxies for devices that use the Internet management
  295.             protocols and SMI.  Their interest is primarily due to the
  296.             widespread commercial implementation and use of such devices
  297.             within their enterprises, especially devices that use the
  298.             Internet TCP/IP protocol suite.
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.             Newnan             Expires August 27, 1993            Page 2
  307.  
  308.  
  309.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  310.  
  311.  
  312.             The basic model for ISO/CCITT-Internet proxy management is
  313.             illustrated in the following diagram.
  314.  
  315.  
  316.                       Manager                   Proxy
  317.             Agent
  318.              +-----------------------+  +---------------------+  +------
  319.             ----------------+
  320.              |+---------------------+|  |+------+ +----------+|  |+-----
  321.             --------------+ |
  322.              ||     Management      ||  || GDMO | | Internet ||  ||
  323.             Managed      | |
  324.              ||    Applications     ||  || MIB  | |   MIB    ||  ||
  325.             Resources     | |
  326.              |+---------------------+|  |+------+ +----------+|  |+-----
  327.             --------------+ |
  328.              |      |                |  |+-------------------+|  |
  329.             |               |
  330.              |      |                |  ||      Service      ||  |
  331.             |               |
  332.              |      |                |  ||     Emulation     ||  |
  333.             |               |
  334.              |      |                |  ||(scoping)          ||  |
  335.             |               |
  336.              |      |                |  ||   (filtering)     ||  |
  337.             |               |
  338.              |      |                |  ||       (operations)||  |
  339.             |               |
  340.              |+-----------+---------+|  |+-------------------+|  |+-----
  341.             -----+---------+|
  342.              || ISO/CCITT |   GDMO  ||  || Protocols Mapping ||  ||
  343.             Internet | Internet||
  344.              ||  Manager  |   MIB   ||  ||  CMIS |...| SNMP  ||  ||
  345.             Agent   |   MIB   ||
  346.              |+-----------+---------+|  |+-------------------+|  |+-----
  347.             -----+---------+|
  348.              |    |                  |  |  |CMIS           |  |  |    |
  349.             |
  350.              |    | CMIS Services    |  |  |Services       |  |  |    |
  351.             SNMP "Services" |
  352.              |    |                  |  |  |               |  |  |    |
  353.             |
  354.              |    |                  |  |  |           SNMP|  |  |    |
  355.             |
  356.              |    |                  |  |  |     "Services"|  |  |    |
  357.             |
  358.              +-----------------------+  +---------------------+  +------
  359.             ----------------+
  360.              |         CMIP          |  |   CMIP   |   SNMP   |  |
  361.             SNMP          |
  362.              +-----------------------+  +---------------------+  +------
  363.             ----------------+
  364.                         ^                     ^         ^
  365.             ^
  366.  
  367.             Newnan             Expires August 27, 1993            Page 3
  368.  
  369.  
  370.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  371.  
  372.  
  373.                         |                     |         |
  374.             |
  375.                         +---------------------+         +---------------
  376.             ----+
  377.                              CMIP Messages                  SNMP
  378.             Messages
  379.  
  380.  
  381.             The proxy architecture provides emulation of CMIS services
  382.             by mapping to the corresponding SNMP message(s) necessary to
  383.             carry out the service request.  The service emulation allows
  384.             management of Internet objects by an ISO/CCITT manager.  The
  385.             left hand side of the proxy behaves like an ISO/CCITT agent,
  386.             communicating with the ISO/CCITT manager using CMIP
  387.             protocols.  The right hand side  of the proxy behaves like
  388.             an Internet manager, communicating with the Internet agent
  389.             using SNMP protocols.
  390.  
  391.             The proxy relies on the existence of a pair of directly-
  392.             related MIB definitions, where the Internet MIB has been
  393.             translated into ISO/CCITT GDMO using the procedures
  394.             specified in [IIMCIMIBTRANS]. The proxy defined in
  395.             [IIMCPROXY] uses these MIB definitions and rules to provide
  396.             run-time translation of management information carried in
  397.             service requests and responses.
  398.  
  399.             The proxy architecture is designed with a specified
  400.             interface between the proxy and the underlying protocol
  401.             stacks, and so deals primarily in terms of CMIS services and
  402.             SNMP "services".  The proxy emulates services such as CMIS
  403.             scoping and filtering, processing of CMIS operations, and
  404.             forwarding/logging of CMIS notifications by performing a
  405.             mapping process which must be tailored for each protocol
  406.             (for example, SNMP and SNMPv2 are variants of the same
  407.             protocol mapping process).
  408.  
  409.             In addition, this document specifies translation procedures
  410.             for converting ISO/CCITT GDMO MIBs into Internet MIBs.  MIBs
  411.             generated by this translation process cannot be utilized by
  412.             the Proxy defined in [IIMCPROXY], although another kind of
  413.             Proxy could be defined for this purpose in the future.
  414.  
  415.             Finally, note that MIBs translated by procedures such as
  416.             those defined by [IIMCIMIBTRANS] and [IIMCOMIBTRANS] may
  417.             also be used without a proxy. For example, a translated MIB
  418.             may be used to take advantage of existing MIB definitions
  419.             when business needs require deployment in a different
  420.             management environment. Translated MIBs may also be used to
  421.             provide uniformity when multiple management environments are
  422.             supported by a single system (e.g., dual stack managers).
  423.  
  424.  
  425.  
  426.  
  427.  
  428.             Newnan             Expires August 27, 1993            Page 4
  429.  
  430.  
  431.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  432.  
  433.  
  434.             1.3 Scope
  435.  
  436.             In recent years computer networks have experienced an
  437.             explosion in the number and complexity of objects to be
  438.             managed.  Especially challenging have been environments
  439.             where platforms from many vendors must interact and complex
  440.             software and hardware configurations must be supported.  A
  441.             chronic concern for such environments is end-to-end problem
  442.             determination and resolution.
  443.  
  444.             Consequently there has been much effort toward standardizing
  445.             the management of applications, networks, services and
  446.             systems.  Despite this major investment, consumers and
  447.             standards participants have often found progress
  448.             disturbingly slow ---                                 especially in standardizing management
  449.             information.
  450.  
  451.             To further complicate matters, different subcultures have
  452.             developed differing philosophies and technologies for
  453.             network management.  Notable examples are the Internet and
  454.             ISO/CCITT communities.  Although MIB work in these
  455.             communities has so far mostly been complementary there is
  456.             increasing danger of duplicative, inconsistent and
  457.             competitive MIB specification.
  458.  
  459.             Standardization is a political process and each philosophy
  460.             of network management has its merits.   However a network
  461.             manger rarely has the luxury of being politician or
  462.             philosopher; they must pragmatically determine problems in
  463.             the network and rapidly resolve them.  Typically, service
  464.             must be assured in an end-to-end environment management by a
  465.             wide range of technologies ---                                          Internet, ISO/CCITT, and
  466.             otherwise.
  467.  
  468.             If network management is to meet needs of such network
  469.             operators, an "ecumenical" approach to MIBs is required that
  470.             marries the work of these standards for a thus providing a
  471.             comprehensive and consistent view of networked resources.
  472.             An end-to-end approach is needed, one that conceals
  473.             differences of protocol and presents the consolidated view
  474.             of distributed resources to network operators, system
  475.             administrators and programmers.
  476.  
  477.             This implies a common MIB independent of protocol.  One way
  478.             to arrive at this is to pursue comprehensive and
  479.             mechanizable procedures to assist in translating MIB
  480.             specifications. This should allow rapid sharing of MIB
  481.             specifications while requiring minimal technical and
  482.             political intervention by human beings.
  483.  
  484.             What you are reading is a contribution toward this end, a
  485.             heuristic procedure to translate from ISO/CCITT GDMO MIB
  486.             specifications to the Internet MIB macro specifications.
  487.  
  488.  
  489.             Newnan             Expires August 27, 1993            Page 5
  490.  
  491.  
  492.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  493.  
  494.  
  495.             This translation procedure is written with four objectives
  496.             in mind:
  497.  
  498.             - Lose as little functionality as possible in translation.
  499.             - Minimize need for human involvement to translate.
  500.             - Minimize cost to implement dual protocol and proxy-based
  501.               applications.
  502.             - Support generic network models that span many computer
  503.               platforms and network elements.
  504.  
  505.             While an entirely mechanized translation from an ISO/CCITT
  506.             GDMO MIB to an Internet MIB is not always possible, the
  507.             intent is to mechanize the process as much as possible and
  508.             supply reasonable defaults that then may be tempered with
  509.             human judgment.
  510.  
  511.             In the longer term, MIBs translated in this manner might be
  512.             used in conjunction with a proxy architecture that enables
  513.             interworking between ISO/CCITT managers and Internet agents,
  514.             or vice versa.
  515.  
  516.             Following is a procedure for translating management
  517.             information bases (MIB's) from ISO/CCITT Guidelines for
  518.             Definition of Managed Objects (GDMO) format to that of the
  519.             Internet MIB macro format [RFC1212].  The body of this
  520.             document has five parts:
  521.  
  522.             - This introduction, including motivation and objectives for
  523.               the translation.
  524.             - The translation procedure itself.
  525.             - Constraints on use of the SNMP with MIBs translated by
  526.               this procedure.
  527.             - Summary.
  528.  
  529.             Sample inputs and translated outputs are also provided in an
  530.             appendix.  Examples used throughout the body of the text are
  531.             taken from these samples.
  532.  
  533.             The following outstanding issues have been identified for
  534.             inclusion in future versions of this document.
  535.  
  536.             - This procedure is based on current Internet SMI standards,
  537.               but should be extended to also cover proposed SNMPv2 SMI
  538.               standards. This is a definite requirement for Issue 1 of
  539.               this algorithm.
  540.  
  541.             - Certain input "pragmas" may be appropriate to document
  542.               human overrides to algorithmic translation in a systematic
  543.               and machine readable form.  Among other things, this might
  544.               facilitate generation of proxies.  Pragmas, however, are
  545.               beyond the scope of Issue 1.
  546.  
  547.             This paper assumes the existence of appropriate mechanisms
  548.             and procedures for registry of translated objects.  What
  549.  
  550.             Newnan             Expires August 27, 1993            Page 6
  551.  
  552.  
  553.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  554.  
  555.  
  556.             those procedures might be and where such objects should be
  557.             registered, however, is beyond the scope of this document.
  558.  
  559.  
  560.             1.4 Terms and Conventions
  561.  
  562.             The reader is assumed to be familiar with the vocabularies
  563.             of Internet and ISO/CCITT management; in cases where there
  564.             might be confusion between the two, words such as
  565.             "ISO/CCITT",  "GDMO" and "Internet" are inserted to avoid
  566.             ambiguity.
  567.  
  568.             The following conventions are used throughout the paper:
  569.  
  570.             The terms "class" and "attribute" when expressed in lower
  571.             case are generic, referring either to ISO/CCITT MANAGED
  572.             OBJECT CLASS's and ATTRIBUTE's (respectively) or their
  573.             translated Internet MIB counterparts.
  574.  
  575.             The term "arc" means a single level of branching within an
  576.             Abstract Syntax Notation One(ASN.1) registration tree.
  577.  
  578.             The terms "enumerate" and "explode" are used synonymously to
  579.             describe the process of translating ATTRIBUTE's and their
  580.             values to OBJECT TYPE macros.
  581.  
  582.             A "registry family" is defined to be a set of ASN.1 OBJECT
  583.             IDENTIFIER arcs and node shaving a common immediate parent.
  584.  
  585.             Footnotes explore aspects of the translation procedure where
  586.             human judgment may be especially advisable, rather than
  587.             accepting the raw output of a translator.
  588.  
  589.  
  590.             2. Translation Procedures
  591.  
  592.  
  593.             2.1 Relationship to RFC1212
  594.  
  595.             While translation per se has not been widely investigated,
  596.             [RFC1212] does provide advice for adopting MIB objects from
  597.             ISO/CCITT GDMO to Internet MIB macros.  However, RFC 1212
  598.             advises a minimalistic approach to MIB specification,
  599.             discouraging carryover of the complexities often found in
  600.             ISO/CCITT GDMO specifications.  Thus, it does not so much
  601.             tell how to translate a MIB as provide advice for borrowing
  602.             elements of a ISO/CCITT GDMO specification and constructing
  603.             a MIB more in keeping with Internet philosophy.
  604.  
  605.             The translation procedure provided here seeks instead to
  606.             provide as faithful a translation as possible, in order to
  607.             support the objectives identified in section 1.2 above.
  608.  
  609.  
  610.  
  611.             Newnan             Expires August 27, 1993            Page 7
  612.  
  613.  
  614.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  615.  
  616.  
  617.             As applicable, the subsections are divided into one or more
  618.             of the following parts:
  619.  
  620.             - Relevant advice quoted verbatim from RFC1212.  Beware that
  621.               the entire RFC is not quoted here.  The reader is referred
  622.               to the source for complete text.
  623.             - Additional constraints are identified to allow as
  624.               comprehensive and mechanizable an approach as possible.
  625.             - Discussion of the translation procedure is provided as
  626.               guidance to the reader.
  627.  
  628.  
  629.             2.2 Mapping of Managed Object Classes and Attributes
  630.  
  631.  
  632.             2.2.1 RFC 1212 Advice
  633.  
  634.             ... The next step is to categorize the objects into groups.
  635.             For experimental MIB's, optional objects are permitted.
  636.             However, when a MIB module is placed in the Internet-
  637.             standard space, these optional objects are either removed,
  638.             or placed in an optional group, which, if implemented, all
  639.             objects in the group must be implemented.  For the first
  640.             pass, it is wisest to simply ignore any optional objects in
  641.             the original MIB: experience shows it is better to define a
  642.             core MIB module first, containing only essential objects;
  643.             later, if experience demands, other objects can be added.
  644.  
  645.             It must be emphasized that groups are "units of conformance"
  646.             within a MIB: everything in a group is "mandatory" and
  647.             implementations do either whole groups or none.
  648.  
  649.             Next for each managed object class, determine whether there
  650.             can exist multiple instances of that managed object class.
  651.             If not, then for each of its attributes, use the OBJECT TYPE
  652.             macro to make an equivalent definition.
  653.  
  654.             Otherwise, if multiple instances of the managed object class
  655.             can exist, then define a conceptual table having conceptual
  656.             rows each containing a columnar object for each of the
  657.             managed object class's attributes. If the managed object
  658.             class is contained within the containment tree of another
  659.             managed object class, then the assignment of an object type
  660.             is normally required for each of the "distinguished
  661.             attributes" of the containing managed object class.  If they
  662.             do not already exist within the MIB module, then they can be
  663.             added via the definition of additional columnar objects in
  664.             the conceptual row corresponding to the contained managed
  665.             object class.
  666.  
  667.             In defining a conceptual row, it is useful to consider the
  668.             optimization of network management operations which will act
  669.             upon its columnar objects.  In particular, it is wisest to
  670.             avoid defining more columnar objects within a conceptual
  671.  
  672.             Newnan             Expires August 27, 1993            Page 8
  673.  
  674.  
  675.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  676.  
  677.  
  678.             row, than can fit in a single PDU.  As a rule of thumb, a
  679.             conceptual row should contain no more than approximately 20
  680.             objects.  Similarly, or as a way to abide by the "20 object
  681.             guideline", columnar objects should be grouped into tables
  682.             according to the expected grouping of network management
  683.             operations upon them. As such, the content of conceptual
  684.             rows should reflect typical access scenarios, e.g., they
  685.             should be organized along functional lines such as one row
  686.             for statistics and another row for parameters, or along
  687.             usage lines such as commonly-needed objects versus rarely-
  688.             needed objects.
  689.  
  690.             On the other hand, the definition of conceptual rows where
  691.             the number of columnar objects used as indexes outnumbers
  692.             the number used to hold information, should also be avoided.
  693.             In particular, the splitting of a managed object class's
  694.             attributes into many conceptual tables should not be used as
  695.             a way to obtain the same degree of flexibility/complexity as
  696.             is often found in MIB's with a myriad of optionality.
  697.  
  698.  
  699.             2.2.2 Additional Constraints
  700.  
  701.             This subsection addresses:
  702.  
  703.             - Mapping of MANAGED OBJECT CLASSES and Distinguished Names.
  704.             - Mapping of PACKAGE's.
  705.  
  706.             It deals only with the high level procedures for mapping
  707.             ISO/CCITT GDMO MANAGED OBJECT CLASSES and ATTRIBUTE's into
  708.             Internet MIB macros.  Enumeration of individual ATTRIBUTE
  709.             values is addressed in subsection 2.3.
  710.  
  711.             2.2.2.1 Mapping of MANAGED OBJECT CLASSES and Distinguished
  712.             Names
  713.  
  714.             Translation of a registry family of MANAGED OBJECT CLASS
  715.             specifications begins by
  716.  
  717.             - Allocating the root of a registry subtree to contain the
  718.               translated objects.
  719.             - Assigning a brief naming prefix that distinguishes
  720.               contents of a corresponding ASN.1 module generated by the
  721.               translation.  The module itself is registered at the root
  722.               of the registry subtree.
  723.  
  724.                  Note: Assignment of naming prefixes and registry
  725.                  subtrees are required activities, however,
  726.                  procedures for these are outside the scope of this
  727.                  paper
  728.  
  729.             For each MANAGED OBJECT CLASS of the input registry family,
  730.             define a corresponding Internet MIB object group, its "class
  731.             group"  Reserve an arc for each of these, keeping the same
  732.  
  733.             Newnan             Expires August 27, 1993            Page 9
  734.  
  735.  
  736.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  737.  
  738.  
  739.             relative arc number as is assigned to its equivalent MANAGED
  740.             OBJECT CLASS in the input ISO/CCITT GDMO registry. Avoid
  741.             registration of ISO/CCITT objects under arc zero(0) by using
  742.             the value 16,384 instead.
  743.  
  744.             For each class group define one Internet MIB table ---                                                                  a
  745.             "class table" ---                             that represents the class as a whole.
  746.             Assign this table arc number 1 beneath the arc of the class
  747.             group.  As will be further discussed in subsection 2.3
  748.             below, "side tables" will also often be required for a class
  749.             group to support multi-valued ATTRIBUTE's and ATTRIBUTE's
  750.             with complex syntaxes.  Assign arcs for side tables in
  751.             ascending order beneath the arc of the class group beginning
  752.             with arc number two.
  753.  
  754.                  Note: Since all ATTRIBUTE's expand into class tables or
  755.                  side tables, class groups generated by the algorithm
  756.                  never contain scalar values.
  757.  
  758.             For each table in the class group, define a table entry
  759.             object and syntax consistent with RFC 1212 usage for table
  760.             entries.
  761.  
  762.             For the entries of each class table, begin by allocating the
  763.             following conceptual columns and associated arcs:
  764.  
  765.             - Leg 0 beneath the class entry arc is reserved (by the
  766.               Internet Structure of Management Information (SMI)).
  767.  
  768.             - Assign leg 1 the delete object, a write-only INTEGER for
  769.               which 0 indicates deletion of the corresponding conceptual
  770.               row.
  771.  
  772.             - Leg 2 of the arc is assigned the "class entry index," an
  773.               INTEGER valued object that provides the unique index for
  774.               an entry to the class table. This distinguishes an
  775.               instance of an object within its class.
  776.               The value of the class entry index is a component of the
  777.               "class entry instance."  The latter identifies both an
  778.               object's class and the unique instance within that class.
  779.               This value is used in the translated MIB instead of
  780.               Distinguished Name's and ObjectInstance's that represent
  781.               relationships between managed objects.  As discussed
  782.               later, no direct translation of Distinguished Names is
  783.               attempted.  The class entry instance is arrived at by
  784.               concatenating:
  785.               -- The OBJECT IDENTIFIER of the class table entry.
  786.               -- The value 2 (arc number for the class entry index)
  787.               -- The value of the class entry index for the instance in
  788.               question.
  789.  
  790.                  Note: Where "concatenating" means arriving at a
  791.                  simple combined sequence of arc values, without
  792.                  repeat counts or nesting.
  793.  
  794.             Newnan             Expires August 27, 1993           Page 10
  795.  
  796.  
  797.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  798.  
  799.  
  800.  
  801.             Entries of side tables begin in similar fashion:
  802.  
  803.             - Leg 0 is reserved.
  804.  
  805.             - Leg 1 is assigned the delete object.
  806.  
  807.             - Leg 2 of the arc is assigned the class entry index, which
  808.               has the same value as the corresponding class entry index
  809.               of the class table.  This ties side table entries to their
  810.               corresponding class table entry.
  811.  
  812.             - Leg 3 of the arc is assigned the first (and typically
  813.               only) "value index"; this distinguishes a particular value
  814.               of a multi-valued attribute or syntax from the other
  815.               values.
  816.  
  817.             - Legs 4-19 of the arc can be assigned if necessary to
  818.               provide additional entry value indices.  These are needed
  819.               only for nested multiply occurring syntaxes.
  820.  
  821.                  Note: The mapping of multiply occurring elements of
  822.                  syntaxes is discussed further in later sections.  While
  823.                  supported for completeness, multi-dimensional values
  824.                  represent an extreme case.  Caution should be used in
  825.                  adopting the raw output of the algorithm for complex
  826.                  syntaxes.
  827.  
  828.  
  829.             2.2.2.2 Mapping of PACKAGE's
  830.  
  831.             In reading this section the reader may wish to refer to
  832.             Figures 1 and 2, which illustrate the input and output
  833.             subtrees of the sample MIB (Appendix A). Note that for this
  834.             example, the Trouble Administration module is rooted beneath
  835.             an (optional) version arc, to facilitate future releases.
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.             Newnan             Expires August 27, 1993           Page 11
  856.  
  857.  
  858.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  859.  
  860.  
  861.                                           |
  862.                                           | Trouble Report Registry
  863.                       +-------------------+----------------------+
  864.                       |                                          |
  865.                  trMObjectClass                            trAttribute
  866.                       |                                          |
  867.                       |                           +-----+-----+-----+
  868.                  troubleReport(5)                 |     |     |     |
  869.                                             accessTime   ....    cancel
  870.                                            LocationList(2)   RequestedBy
  871.                                                              Manager(12)
  872.  
  873.                       Figure 1. Sample Input Registration Tree
  874.  
  875.             All else being equal, enumerate ATTRIBUTE's based upon a
  876.             left-to-right scanning of the input ISO/CCITT GDMO
  877.             specification.  ATTRIBUTE's and their values may be
  878.             enumerated multiple times in the course of translating a
  879.             specification, once for every template in which they are
  880.             referenced.  For example, if an attribute is included in the
  881.             PACKAGE's of two MANAGED OBJECT CLASS's, it will be
  882.             enumerated twice in the output: once for each class group.
  883.  
  884.             Enumerate ATTRIBUTE's and their values in the same sequence
  885.             as declared in a PACKAGE.  These translate to OBJECT TYPE's
  886.             that, unless otherwise noted below, receive successive arcs
  887.             in the output registry tree.
  888.  
  889.             Enumerate all components of base classes before those of
  890.             their derivative classes.  Thus where a package is refined
  891.             by a subclass, first enumerate all components of the base
  892.             class, keeping the sequence of the base class PACKAGE's.
  893.             Explode ATTRIBUTE's of a derivative class later, enumerating
  894.             in the order of specification for that class.
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.             Newnan             Expires August 27, 1993           Page 12
  917.  
  918.  
  919.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  920.  
  921.  
  922.  
  923.  
  924.                                          |
  925.                                          +Network             Version
  926.                                          |Management
  927.                                          |V1 (1)
  928.             .............................|..............................
  929.                                          +Trouble             ASN.1
  930.                                          |Administration      Module
  931.                                          |(4)
  932.             .............................|..............................
  933.                                          +trTrouble           Class
  934.                                          |Report(5)           Group
  935.                            +-------------------------------+
  936.                            |                               |
  937.             ...............|...............................|............
  938.             Class Tables   +trTrouble                      +trTrouble
  939.             and Side       |ReportTable (1)                |ReportAccess
  940.             Tables         |                               |TimeLocation
  941.                            |                               |ListTable(2)
  942.             ...............|...............................|............
  943.             Class and      +trTrouble                      +trTrouble
  944.             Side Table     |ReportTableEntry (1)           |ReportAccess
  945.             Entries        |                               |TimeLocation
  946.                            |                               |ListTable
  947.                            |                               |Entry(1)
  948.             ...............|...............................|............
  949.             Enumerated     +--trTATroubleReportDelete (1)  +--(etc)
  950.             Attribute      |
  951.             Values         +--trTATroubleReportIndex (2)
  952.                            |
  953.                            +--trTATroubleReportCancel
  954.                               RequestedByManager (20)
  955.  
  956.                       Figure 2. Sample Output Registration Tree
  957.  
  958.             Reserve at least ten arcs for future growth for each level
  959.             of derivation, i.e., take the highest arc number of the base
  960.             class, add ten and round upwards to the nearest even
  961.             multiple of ten, to determine the first arc number assigned
  962.             to the derivative class.
  963.  
  964.             For multiple inheritance, enumerate contents of base classes
  965.             left-to-right and depth first, i.e., enumerate all
  966.             components attributable to one immediate base class before
  967.             proceeding to the next.  In this case also reserve arcs for
  968.             future growth by adding ten and rounding up to the nearest
  969.             even multiple of ten.
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.             Newnan             Expires August 27, 1993           Page 13
  978.  
  979.  
  980.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  981.  
  982.  
  983.             2.2.3 Discussion
  984.  
  985.  
  986.             2.2.3.1   Mapping of MANAGED OBJECT CLASSES and
  987.             Distinguished Names
  988.  
  989.             RFC 1212 recommends defining a table for every object group
  990.             that can be multiply occurring within an agent.  It would be
  991.             very unusual for a MANAGED OBJECT CLASS not to have
  992.             potentially multiple occurrences, especially given a generic
  993.             network model that spans systems.  Thus to simplify
  994.             translation, all object classes map to tables.  This
  995.             approach has several advantages:
  996.  
  997.             - It supports default values for new object instances.
  998.  
  999.             - It is easy to mechanize, since there is no need to
  1000.               recognize special cases that are not multiply occurring.
  1001.  
  1002.             - It simplifies programming of proxy or dual protocol
  1003.               agents, since the programmer is dealing with basically the
  1004.               same syntax for scalar items, regardless of protocol.
  1005.  
  1006.             The last point applies to both programming effort and
  1007.             processing overhead.  To the extent the elements of syntax
  1008.             are mapped one-to-one, and underlying syntax is similar or
  1009.             identical for both protocols, they can be manipulated with
  1010.             common code and common data structures.  This simplifies
  1011.             translation from both the programming and run-time
  1012.             perspectives.
  1013.  
  1014.             The notion of a class entry instance is introduced since
  1015.             direct translation of Distinguished Name's appears
  1016.             impractical for the following reasons:
  1017.  
  1018.             - A possible ambiguity arises since NAME BINDING's allow
  1019.               different object instances of the same MANAGED OBJECT
  1020.               CLASS to exist under parent objects of different classes.
  1021.               Likewise, different classes can have the same syntax for
  1022.               their distinguished attribute(s).  Thus, a concatenation
  1023.               of attribute values is not sufficient to uniquely
  1024.               distinguish an object instance.
  1025.  
  1026.             - NAME BINDING's allow different instances of the same class
  1027.               to be subordinate to different types of parent and even
  1028.               allow instances of a class to be contained recursively
  1029.               within others of the same class.  Thus, in directly
  1030.               translating the DN one cannot assume a fixed sequence of
  1031.               parameters as required for by the INDEX clause (DN's for
  1032.               different instances of the same object class may be have
  1033.               different numbers of RDN's).
  1034.  
  1035.             - Both problems could in theory be circumvented by fully
  1036.               translating the Distinguished Name and incorporating
  1037.  
  1038.             Newnan             Expires August 27, 1993           Page 14
  1039.  
  1040.  
  1041.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1042.  
  1043.  
  1044.               Attribute Type's as well as Attribute Value's into the
  1045.               subidentifier OID (in which case the INDEX clause would
  1046.               only need to specify one index, an OBJECT IDENTIFIER).
  1047.  
  1048.             While the latter is in theory possible, it would result in
  1049.             exceedingly verbose subidentifiers, on the order of 70
  1050.             octets rather than 7.  This is of serious concern due to PDU
  1051.             length restrictions for SNMP.  RFC 1212 proposes a "rule of
  1052.             twenty," i.e., no more than twenty attributes per operation.
  1053.             That guideline was designed for relatively compact
  1054.             subidentifiers.  When using an RDN for an INDEX, this would
  1055.             more likely amount to a "rule of three," which is why
  1056.             comprehensive translation of the ISO/CCITT DN to an INDEX
  1057.             appears practical.
  1058.  
  1059.             The result of this approach is that Distinguished Names are
  1060.             NOT translated at all. Similar functionality (naming of
  1061.             objects) is instead provided by OBJECT IDENTIFIERS that
  1062.             identify the table entries which corresponding to MANAGED
  1063.             OBJECTs.  The indexes of these tables are arbitrary integers
  1064.             that have no significance other than discriminate between
  1065.             the entries of a table.  In general, all management
  1066.             information that is mapped by this specification to OBJECT-
  1067.             TYPEs is mapped to tables that have one or more arbitrary
  1068.             indexes of type INTEGER.  Class table entries in particular
  1069.             have exactly one index.
  1070.  
  1071.             For the following reasons, attributes of TOP are not
  1072.             directly translated into OBJECT TYPE's:
  1073.  
  1074.             - Most of these notions will be unfamiliar to the Internet
  1075.               user and thus their presence would add questionable value.
  1076.  
  1077.             - Multi-valued attributes would require additional side
  1078.               tables for all object class groups, which would be
  1079.               cumbersome.
  1080.  
  1081.             - Managed object class is implicit in the class prefix thus
  1082.               does not require a special attribute.
  1083.  
  1084.             - An allomorphs attribute is supported in ISO/CCITT to allow
  1085.               dynamic recognition of allomorphs which are supported by
  1086.               an instance.  Since Internet MIB does not support
  1087.               allomorphs at all ---                                   much less dynamic ones ---                                                             there is no
  1088.               reason to list them.
  1089.  
  1090.             - There is no notion of NAME BINDING's for Internet MIB.
  1091.               NAME BINDING rules must still be enforced for the
  1092.               translated MIB, and should be documented via comments in
  1093.               the Internet MIB specifications.  However, there seems to
  1094.               be no point in providing this attribute to the Internet
  1095.               user in the run time environment.
  1096.  
  1097.  
  1098.  
  1099.             Newnan             Expires August 27, 1993           Page 15
  1100.  
  1101.  
  1102.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1103.  
  1104.  
  1105.             - Presence or absence of conditional packages can be
  1106.               detected using a GetNextRequest and determining whether
  1107.               the conceptual rows returned are the same as expected.  No
  1108.               special attribute is needed for this purpose.
  1109.  
  1110.             The ocNameBindingTable of the ISO/CCITT Convergence MIB
  1111.             provides a mechanism by which name bindings can be
  1112.             inspected, also provided upon object creation.  This feature
  1113.             is included for completeness and to avoid ambiguity.  It is
  1114.             unlikely to be used often, so it is placed in a table rather
  1115.             than enumerated in the class tables.
  1116.  
  1117.  
  1118.             2.2.3.2   Mapping of PACKAGE's
  1119.  
  1120.             Left-to-right sequential enumeration is the obvious approach
  1121.             for a mechanized translation procedure.
  1122.  
  1123.             While ISO/CCITT GDMO allows ATTRIBUTE's and ASN.1 syntaxes
  1124.             to be referenced in multiple places and thus be shared,
  1125.             Internet MIB format does not.  Thus one or more OBJECT
  1126.             TYPE's must be specified for each template in which they are
  1127.             referenced.  The consequent explosion of enumerated
  1128.             ATTRIBUTE's and ASN.1 syntaxes is a major motivation for a
  1129.             mechanizable procedure and mechanized translation aids.
  1130.  
  1131.  
  1132.             2.3 Mapping to the SYNTAX clause
  1133.  
  1134.  
  1135.             2.3.1 RFC 1212 Advice
  1136.  
  1137.             When mapping to the SYNTAX clause of the OBJECT TYPE macro:
  1138.  
  1139.             (1)  An object with BOOLEAN syntax becomes an INTEGER taking
  1140.             either of values true(1) or false(2).
  1141.  
  1142.             (2)  An object with ENUMERATED syntax becomes an INTEGER,
  1143.             taking any of the values given.
  1144.  
  1145.             (3)  An object with BIT STRING syntax containing no more
  1146.             than 32 bits becomes an INTEGER defined as a sum; otherwise
  1147.             if more than 32 bits are present, the object becomes an
  1148.             OCTETSTRING, with the bits numbered from left-to-right, in
  1149.             which the least significant bits of the last octet may be
  1150.             "reserved for future use."
  1151.  
  1152.             (4)  An object with a character string syntax becomes either
  1153.             an OCTETSTRING or a DisplayString, depending on the
  1154.             repertoire of the character string.
  1155.  
  1156.             (5)  An non-tabular object with a complex syntax, such as
  1157.             REAL or EXTERNAL, must be decomposed, usually into an OCTET
  1158.  
  1159.  
  1160.             Newnan             Expires August 27, 1993           Page 16
  1161.  
  1162.  
  1163.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1164.  
  1165.  
  1166.             STRING (if sensible).  As a rule, any object with a
  1167.             complicated syntax should be avoided.
  1168.  
  1169.             (6)  Tabular objects must be decomposed into rows of
  1170.             columnar objects.
  1171.  
  1172.  
  1173.             2.3.2 Additional Constraints
  1174.  
  1175.  
  1176.             2.3.2.1 Simple Input Syntax
  1177.  
  1178.             Following are rules for translating non-constructed
  1179.             (scalar)syntax.
  1180.  
  1181.             For ENUMERATED types, transform to INTEGER, with values of
  1182.             (0) mapped to (32767).
  1183.  
  1184.             Where ISO/CCITT management allows certain forms to be
  1185.             present or not present on a case by case basis (i.e.,
  1186.             conditional packages and ASN.1 OPTIONAL and CHOICE
  1187.             syntaxes)enumerate all possibilities and allow corresponding
  1188.             conceptual columns to be conditionally present on a row-by-
  1189.             row basis.
  1190.  
  1191.             For CHOICE types, provide an OBJECT TYPE for every
  1192.             alternative and populate exactly one of these alternatives
  1193.             per conceptual row.
  1194.  
  1195.             For ASN.1 string types, use DisplayString whenever the
  1196.             character set actually expected in the element is a subset
  1197.             of DisplayString, else specify OCTET STRING.
  1198.  
  1199.             In general, treat a constructed type that contains no more
  1200.             than one scalar (e.g., various forms of string
  1201.             specialization) as if it were the contained scalar.
  1202.  
  1203.             ANY's and ANY DEFINED BY's map to OCTET STRING's that
  1204.             contain the BER encoded values of the corresponding ASN.1
  1205.             types.
  1206.  
  1207.  
  1208.             2.3.2.2.Complex Input Syntax
  1209.  
  1210.             Map compound constructors (those that may contain multiple
  1211.             scalars) to SEQUENCES ---                                     including SET syntaxes.
  1212.  
  1213.             Expansion of compound constructors sometimes requires
  1214.             definition of "side tables," ancillary tables within the
  1215.             object group that supplement the main table representing the
  1216.             ISO/CCITT GDMO managed object class.  The rules for making
  1217.             side tables are applied recursively and are as follows:
  1218.  
  1219.  
  1220.  
  1221.             Newnan             Expires August 27, 1993           Page 17
  1222.  
  1223.  
  1224.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1225.  
  1226.  
  1227.             - For a given level of nesting, if the ISO/CCITT GDMO ASN.1
  1228.               syntax is SEQUENCE (not SEQUENCE OF) or SET (not SET OF)
  1229.               enumerate its scalar elements "in-line" without
  1230.               constructing a new side table, and otherwise treat them as
  1231.               if scalars.
  1232.  
  1233.             - Otherwise (SEQUENCE OF or SET OF) enumerate the scalar
  1234.               elements of the SEQUENCE or SET in a new side table that
  1235.               is a "child" of the current table.  Since this may happen
  1236.               recursively, a side table may be a child of another side
  1237.               table.
  1238.  
  1239.             - The INDEX of a child table is that of its parent
  1240.               concatenated with a value index that uniquely
  1241.               distinguishes instances within the child table.
  1242.  
  1243.  
  1244.             2.3.3 Discussion
  1245.  
  1246.  
  1247.             2.3.3.1   Simple Input Syntax
  1248.  
  1249.             Internet SMI precludes a value of zero and some compilers
  1250.             won't take it.  32767 is a number that practically any
  1251.             machine architecture can support and is large enough so it
  1252.             should not conflict with any enumerated actually specified.
  1253.  
  1254.             Allowing optional conceptual columns within rows is not
  1255.             consistent with the philosophy of RFC 1212, but neither are
  1256.             the MIB's the procedure seeks to translate.  However,
  1257.             optional columns can be accommodated by SNMP using the
  1258.             GetNext request.  In that case protocol returns inconsistent
  1259.             object ID prefixes for any non-present objects, rather than
  1260.             an error condition.
  1261.  
  1262.  
  1263.             2.3.3.2   Complex Input Syntax
  1264.  
  1265.             This is the messiest part of the translation process but
  1266.             cannot be avoided given that the ISO/CCITT GDMO information
  1267.             model is to be carried over.  One way of looking at this is
  1268.             that constructed types are put in "third normal form," i.e.,
  1269.             broken up into a set of flat tables each of which has a
  1270.             unique key.  In EVERY case that key is comprised of one or
  1271.             more ARBITRARY indexes of type INTEGER.  The class table
  1272.             entries have exactly one such index.  Multi-valued
  1273.             attributes are represented as side tables that typically
  1274.             have two indexes: the first BEING the index of the
  1275.             corresponding class table entry and the second an arbitrary
  1276.             integer that distinguishes one attribute value from another
  1277.             for the multi-valued case.  If a set valued ATTRIBUTE
  1278.             contained a multiply occurring syntax (e.g., SEQUENCE OF)
  1279.             that would map to a side table with three indexes of type
  1280.             INTEGER: first, the index of the class table entry, second,
  1281.  
  1282.             Newnan             Expires August 27, 1993           Page 18
  1283.  
  1284.  
  1285.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1286.  
  1287.  
  1288.             the index of the attribute value, and third, the index of
  1289.             the multiply occurrence of the syntax.
  1290.  
  1291.             There is no need for explicit pointers from class table
  1292.             entries to side tables or vice versa.  Given the index of a
  1293.             side table entry, one can find the corresponding class table
  1294.             entry since the class arc is known and the subidentifier is
  1295.             also known, i.e., the first index of the side table.
  1296.             Likewise, knowing the arc for a side table and the index of
  1297.             a corresponding class entry, one can use the side table arc
  1298.             suffixed by the index in a GetNextRequest to discover the
  1299.             first entry in the side table.
  1300.  
  1301.             There is a convention in the Internet world that the key of
  1302.             a table references only attributes contained within that
  1303.             table.  The translation procedure honors that practice by
  1304.             defining distinct OBJECT TYPE's for all indices of side
  1305.             tables, although though a child table only has only one
  1306.             index with a different value from its parent's.
  1307.  
  1308.             There may very well be a "natural key" for multi-valued
  1309.             syntax, e.g., an address or name. In this case, an
  1310.             artificial index may be inappropriate.  Human judgment must
  1311.             weigh whether there is a "natural" key and whether the
  1312.             length of the associated subidentifier would be permissible
  1313.             for purposes of indexing.
  1314.  
  1315.                  Note: It is not recommended that natural keys be used
  1316.                  for the INDEX parameter of a class table as that will
  1317.                  result in very long subidentifiers and complicate
  1318.                  allocation of indexes for new object creation.  Human
  1319.                  judgment can be used to supplement class entry indices
  1320.                  with side tables that provide secondary indices that
  1321.                  support access based on natural keys.
  1322.  
  1323.             There is no need to actually access OBJECT TYPES that
  1324.             correspond to table indices ---                                           you would have to know them
  1325.             first to read them, and they can't be changed.  Therefore,
  1326.             their ACCESS clauses specify not-accessible.
  1327.  
  1328.  
  1329.             2.4 Generation of Internet MIB Identifiers
  1330.  
  1331.  
  1332.             2.4.1 Translation Procedure
  1333.  
  1334.             This discussion has two parts:
  1335.  
  1336.             -    Definition of notation for mapping rules.
  1337.  
  1338.             -    Rules for name mapping, with examples.
  1339.  
  1340.  
  1341.  
  1342.  
  1343.             Newnan             Expires August 27, 1993           Page 19
  1344.  
  1345.  
  1346.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1347.  
  1348.  
  1349.             2.4.1.1   Notation
  1350.  
  1351.             <ASN.1 id>             Identifier of a production rule
  1352.                                    specified using Abstract Syntax
  1353.                                    Notation One (ASN.1), e.g.,
  1354.                                    "AccessTimeLocationList."
  1355.  
  1356.             <ATTRIBUTE id>         Identifier used for ATTRIBUTE
  1357.                                    template, e.g.,"Trouble
  1358.                                    ReportCancelRequestedByManager."
  1359.             <MANAGEDOBJECT         Identifier used for MANAGED OBJECT
  1360.                                    CLASS template, e.g.,"TroubleReport."
  1361.              CLASS id>
  1362.  
  1363.             <module prefix>        An arbitrary literal assigned to the
  1364.                                    ASN.1 module to be generated, e.g.,
  1365.                                    "t1TA."
  1366.  
  1367.             <n>                    A decimal string literal indicating
  1368.                                    the dimension represented by a value
  1369.                                    index  of a side table.  The first
  1370.                                    dimension corresponds to the instance
  1371.                                    of the managed object (i.e., class
  1372.                                    index) and <n> is not concatenated in
  1373.                                    its name.  <n> is null valued for the
  1374.                                    second dimension, which is usually
  1375.                                    the greatest dimension, i.e., the
  1376.                                    standard multi-valued attribute.
  1377.                                    Values of <n> for higher dimensions
  1378.                                    are decimal literals assigned in
  1379.                                    ascending sequence starting with "3,"
  1380.                                    i.e., "3," "4," etc.  Note: This
  1381.                                    option is included for completeness.
  1382.                                    This is a good example of a case
  1383.                                    where human judgment should be used
  1384.                                    before carrying over full
  1385.                                    functionality between MIB's.
  1386.  
  1387.                    Figure 3. Variables for Generating Identifiers
  1388.  
  1389.             The following notation is used to specify mapping rules:
  1390.  
  1391.             - Symbols enclosed in quotes are literals.
  1392.  
  1393.             - Symbols enclosed in angle brackets ("<>") are variables
  1394.               that have different string values depending on instance or
  1395.               context.  Figure 3 describes the variables.
  1396.  
  1397.             - Double upended bars ("||") signify the concatenation
  1398.               operator.  For this operator, literals are concatenated
  1399.               without modification.  When concatenating a variable
  1400.               however, its first character of its value string is
  1401.               promoted to upper case.  Strings are concatenated without
  1402.  
  1403.  
  1404.             Newnan             Expires August 27, 1993           Page 20
  1405.  
  1406.  
  1407.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1408.  
  1409.  
  1410.               intervening punctuation or white space to arrive at the
  1411.               resulting identifier.
  1412.  
  1413.  
  1414.             2.4.1.2.  Mapping Rules
  1415.  
  1416.             The following table provides mapping rules for generating
  1417.             Internet MIB identifiers.  An example is provided for each
  1418.             rule, based on the sample inputs and outputs of Appendix A.
  1419.  
  1420.             Identifier     Syntax and Example
  1421.  
  1422.             class table    <module prefix>||<MANAGED OBJECT CLASS
  1423.                                 id>||"Table"
  1424.                            e.g., t1TATroubleReportTable
  1425.             class          <module prefix>||<MANAGED OBJECT
  1426.             (table)entry        CLASSid>||"TableEntry"
  1427.                            e.g., t1TATroubleReportTableEntry
  1428.             class entry    <module prefix> || <MANAGED OBJECT CLASSid>
  1429.             delete flag         || "Delete"
  1430.                            e.g., t1TATroubleReportDelete
  1431.             class entry    <module prefix> || <MANAGED OBJECTCLASS id>
  1432.             index of class      || "Index"
  1433.             table          e.g., t1TATroubleReportIndex
  1434.  
  1435.             conceptual row <module prefix> ||<MANAGED OBJECT       id>                                                             CLASS
  1436.             of class table      || <ATTRIBUTE id> || <ASN.1 id>
  1437.                            e.g., t1TATroubleReport
  1438.             side table     <module prefix> || <MANAGED OBJECT CLASS id>
  1439.                                 || <ATTRIBUTE id>|| <ASN.1 id>* ||
  1440.                                 "Table"
  1441.                            e.g.,t1TATroubleReportAccessTimeLocationList
  1442.                                 Table
  1443.             side (table)   <module prefix> ||<MANAGED OBJECT CLASS id>
  1444.             entry               ||<ATTRIBUTE id> || "TableEntry"
  1445.                            e.g.,
  1446.                                 t1TATroubleReportAccessTimeLocationList
  1447.                                 TableEntry
  1448.             side entry     <module prefix>|| <MANAGED OBJECT CLASS id>
  1449.             delete flag         || "Delete"
  1450.                            e.g.,
  1451.                                 t1TATroubleReportAccessTimeLocationList
  1452.                                 Delete
  1453.             class entry    <moduleprefix> || <MANAGED OBJECT CLASS id>
  1454.             index of side       || <ATTRIBUTE id> || "ClassIndex"
  1455.             table          e.g.,
  1456.                                 t1TATroubleReportAccessTimeLocationList
  1457.                                 ClassIndex
  1458.             value index of <module prefix> || <MANAGED OBJECT CLASS id>
  1459.             side table          || <ATTRIBUTE id> || "ValueIndex" ||
  1460.                                 <n>
  1461.                            e.g.,
  1462.                                 t1TATroubleReportAccessTimeLocationList
  1463.                                 ValueIndex
  1464.  
  1465.             Newnan             Expires August 27, 1993           Page 21
  1466.  
  1467.  
  1468.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1469.  
  1470.  
  1471.                  Figure 4. Mapping Rules for Generating Identifiers
  1472.  
  1473.                  * Note: The <ASN.1 id> is only present in the names of
  1474.                  side table objects when its presence is necessary to
  1475.                  unambiguously distinguish the table in question.
  1476.  
  1477.             The identifier for the syntax for a (class or side) table
  1478.             entry is the same as that of the table entry itself except
  1479.             the first character is promoted to upper case, e.g.,
  1480.             "T1TATroubleReportTableEntry."
  1481.  
  1482.  
  1483.             2.4.2 Discussion
  1484.  
  1485.             This approach is verbose but can be mechanized and
  1486.             ambiguities and collisions should be rare.  It has the
  1487.             further advantage that names can be used for C language
  1488.             program variables without further manipulation.
  1489.  
  1490.             Separating constituent ids with hyphens would increase
  1491.             readability and decrease likelihood of ambiguity.
  1492.             Unfortunately, many Internet MIB compilers do not allow
  1493.             this.
  1494.  
  1495.             In cases where the same ATTRIBUTE appears in more than one
  1496.             PACKAGE included in a MANAGED OBJECT CLASS, manual
  1497.             intervention is necessary to assign distinct identifiers for
  1498.             the corresponding OBJECT TYPE's.
  1499.  
  1500.  
  1501.             2.5 Mapping to the ACCESS clause
  1502.  
  1503.  
  1504.             2.5.1 RFC 1212 Advice
  1505.  
  1506.             This is straight-forward.
  1507.  
  1508.  
  1509.             2.5.2     Discussion
  1510.  
  1511.             Note that ADD-REMOVE and REPLACE map to "write," while GET
  1512.             maps to "read." There is no direct mapping to SET-TO-
  1513.             DEFAULT, since SNMP requires values be explicitly set for
  1514.             existing objects.  PERMITTED VALUES are not directly mapped
  1515.             in the Internet MIB but need to be understood by the
  1516.             management station.
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.             Newnan             Expires August 27, 1993           Page 22
  1527.  
  1528.  
  1529.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1530.  
  1531.  
  1532.             2.6 Mapping to the STATUS clause
  1533.  
  1534.  
  1535.             2.6.1 RFC 1212 Advice
  1536.  
  1537.             This is usually straight-forward; however, some osified-MIBs
  1538.             use the term "recommended."  In this case, a choice must be
  1539.             made between "mandatory" and "optional."
  1540.  
  1541.  
  1542.             2.6.2 Additional Constraints
  1543.  
  1544.             The translation procedure always uses mandatory.
  1545.  
  1546.  
  1547.             2.6.3 Discussion
  1548.  
  1549.             Human judgment can qualify this as necessary.
  1550.  
  1551.  
  1552.             2.7 Mapping to the DESCRIPTION clause
  1553.  
  1554.  
  1555.             2.7.1 RFC 1212 Advice
  1556.  
  1557.             This is straight-forward: simply copy the text, making sure
  1558.             that any embedded double quotation marks are sanitized
  1559.             (i.e., replaced with single-quotes or removed).
  1560.  
  1561.  
  1562.             2.8 Mapping to the REFERENCE clause
  1563.  
  1564.  
  1565.             2.8.1 RFC 1212 Advice
  1566.  
  1567.             This is straight-forward: simply include a textual reference
  1568.             to the object being mapped, the document which defines the
  1569.             object, and perhaps a page number in the document.
  1570.  
  1571.  
  1572.             2.8.2 Additional Constraints
  1573.  
  1574.             The translation procedure transcribes the registry of the
  1575.             ATTRIBUTE to the corresponding OBJECT-TYPE REFERENCE clause,
  1576.             which ensures that proper ASN.1 syntax for the values of
  1577.             OBJECT IDENTIFIERs is retained.  If any additional
  1578.             information is to be provided in this value, it must be
  1579.             provided to the left of the machine readable ASN.1 syntax
  1580.             and separated from it by a colon, e.g., "ISO 10165-2: joint-
  1581.             iso-ccitt ms (9) smi(3) part2(2)attribute(7)".  This
  1582.             facilitates generation of proxies.
  1583.  
  1584.  
  1585.  
  1586.  
  1587.             Newnan             Expires August 27, 1993           Page 23
  1588.  
  1589.  
  1590.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1591.  
  1592.  
  1593.             2.9 Mapping to the INDEX clause
  1594.  
  1595.  
  1596.             2.9.1 RFC 1212 Advice
  1597.  
  1598.             Decide how instance-identifiers for columnar objects are to
  1599.             be formed and define this clause accordingly.
  1600.  
  1601.  
  1602.             2.9.2 Additional Constraints
  1603.  
  1604.             Use the class entry index's for the table and any containing
  1605.             table, as discussed previously.  This keeps the index for
  1606.             any particular kind of table constant and predictable.
  1607.  
  1608.  
  1609.             2.10 Mapping to the DEFVAL clause
  1610.  
  1611.  
  1612.             2.10.1 RFC 1212 Advice
  1613.  
  1614.             Decide if a meaningful default value can be assigned to the
  1615.             object being mapped, and if so, define the DEFVAL clause
  1616.             accordingly.
  1617.  
  1618.  
  1619.             2.10.2 Additional Constraints
  1620.  
  1621.             Please see the previous sections on mapping of managed
  1622.             objects and syntaxes.
  1623.  
  1624.  
  1625.             2.11 Translation of Actions
  1626.  
  1627.  
  1628.             2.11.1 RFC 1212 Advice
  1629.  
  1630.  
  1631.             2.11.1.1 General Advice
  1632.  
  1633.             Actions are modeled as read-write objects, in which writing
  1634.             a particular value results in the action taking place.
  1635.  
  1636.             Usually an INTEGER syntax is used with a distinguished value
  1637.             provided for each action that the object provides access to.
  1638.             In addition, there is usually one other distinguished value,
  1639.             which is the one returned when the object is read.
  1640.  
  1641.  
  1642.             2.11.1.2 Mapping to the ACCESS clause
  1643.  
  1644.             Always use read-write.
  1645.  
  1646.  
  1647.  
  1648.             Newnan             Expires August 27, 1993           Page 24
  1649.  
  1650.  
  1651.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1652.  
  1653.  
  1654.             2.11.1.3 Mapping to the STATUS clause
  1655.  
  1656.             This is straight-forward.
  1657.  
  1658.  
  1659.             2.11.1.4 Mapping to the DESCRIPTION clause
  1660.  
  1661.             This is straight-forward: simply copy the text, making sure
  1662.             that any embedded double quotation marks are sanitized
  1663.             (i.e., replaced with single-quotes or removed).
  1664.  
  1665.  
  1666.             2.11.1.5 Mapping to the REFERENCE clause
  1667.  
  1668.             This is straight-forward: simply include a textual reference
  1669.             to the action being mapped, the document which defines the
  1670.             action, and perhaps a page number in the document.
  1671.  
  1672.  
  1673.             2.11.2 Discussion
  1674.  
  1675.             This is one of the areas where mechanization can at best be
  1676.             an aid, rather than an automatic solution, to translation.
  1677.             The RFC 1212 advice provides a point of departure in this
  1678.             regard.
  1679.  
  1680.  
  1681.             2.12 Translation of Notifications
  1682.  
  1683.  
  1684.             2.12.1 Approach
  1685.  
  1686.             This subsection provides a method whereby notifications are
  1687.             translated to traps.  This method provides the basis for
  1688.             translation of standard Definition of Management Information
  1689.             (DMI) [ISO10165-2] NOTIFICATIONs to traps as reflected in
  1690.             the ISO/CCITT Convergence MIB of Appendix B.  Since use of
  1691.             traps is strongly discouraged in the Internet community and
  1692.             there is no filtering mechanism in SNMP, such translation
  1693.             should be done very sparingly.  In particular,
  1694.  
  1695.             -    Mapping of notifications to traps should always have a
  1696.             documented justification.
  1697.  
  1698.             -    Wherever such mapping is deemed necessary, the standard
  1699.             traps provided in Appendix B of this specification should be
  1700.             used, if applicable.
  1701.  
  1702.             Where translation of NOTIFICATIONs is necessary, the
  1703.             following method can be used:
  1704.  
  1705.             (1)  For each input registry subtree in which there are
  1706.             NOTIFICATIONs or ATTRIBUTEs to be translated, establish a
  1707.             corresponding output registry subtree to hold the translated
  1708.  
  1709.             Newnan             Expires August 27, 1993           Page 25
  1710.  
  1711.  
  1712.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1713.  
  1714.  
  1715.             MIB (in the example of Appendix B, the output subtrees are
  1716.             onSMI2toInternetNotification and onSMI2toInternetAttributeID
  1717.             respectively).
  1718.  
  1719.             A separate ASN.1 module is generated for each subtree in
  1720.             which NOTIFICATIONs to be translated are registered.
  1721.             Mappings of corresponding ATTRIBUTEs are also incorporated
  1722.             in each such output module, which may lead to objects
  1723.             (VARIABLES) of the same registry appearing in different
  1724.             ASN.1 modules.  The registration of the resulting ASN.1
  1725.             module is the same as that of the root of the output
  1726.             registry subtree assigned for notifications.  Mnemonic
  1727.             naming of the output module is encouraged but outside the
  1728.             scope of this specification.
  1729.  
  1730.             Assign a naming prefix for translated ATTRIBUTEs and
  1731.             NOTIFICATIONs.  This must start with a lower case letter
  1732.             ("on" is the prefix for translated notifications in Appendix
  1733.             B).
  1734.  
  1735.             Editor's Note: [Should we consider auto registry of the MIB
  1736.             module]
  1737.  
  1738.             (2)  For each notification to be mapped list its:
  1739.             identifier; arc within its input registry subtree; and
  1740.             mandatory ATTRIBUTEs.  For mandatory ATTRIBUTEs, also list
  1741.             the corresponding syntaxes resolved to.
  1742.  
  1743.             (3)  For each syntax identified in (2), determine a mapping
  1744.             to the Concise MIB domain. The mapping rules are the same as
  1745.             for subsection 2.3 (Mapping to the SYNTAX Clause) above, but
  1746.             with added constraints that resulting syntax must be scalar
  1747.             and of fixed type (not a CHOICE).  Where the rules of
  1748.             subsection 2.3 do not yield such a form, the syntax of
  1749.             DisplayString is used (as a default).  This is an area in
  1750.             which human judgment will often be required following
  1751.             deterministic translation.
  1752.  
  1753.             (4)  Define an OBJECT-TYPE (variable) for each ATTRIBUTE
  1754.             identified in (2):
  1755.  
  1756.             -    The identifier of the resulting object is arrived at by
  1757.             promoting the first character of the input identifier to
  1758.             upper case and prepending the prefix of (1).  Thus for
  1759.             example eventTime becomes onEventTime given the prefix "on."
  1760.  
  1761.             -    The value for the ACCESS clause is always not-
  1762.             accessible.
  1763.  
  1764.             -    The value of the STATUS clause is always mandatory.
  1765.  
  1766.             -    The value of the REFERENCE clause reflects the
  1767.             registration of the input ATTRIBUTE.  The value for this
  1768.  
  1769.  
  1770.             Newnan             Expires August 27, 1993           Page 26
  1771.  
  1772.  
  1773.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1774.  
  1775.  
  1776.             clause also follows the convention for machine readability
  1777.             described in subsection 2.7.
  1778.  
  1779.             -    The value of the DESCRIPTION clause is taken from the
  1780.             BEHAVIOUR DEFINED AS parameter, if any.  This value is
  1781.             otherwise empty.  This clause will often need to be
  1782.             supplemented by comments, and should be manually edited if
  1783.             the full semantics cannot be carried over due to syntactical
  1784.             or other restrictions.
  1785.  
  1786.             -    The applicable syntax selected in step (3) is used for
  1787.             the value of the SYNTAX clause.
  1788.  
  1789.             -    The (relative) leg number for the output registry is
  1790.             the same as for the input registry.
  1791.  
  1792.             (5)  For each input notification, define a corresponding
  1793.             TRAP-TYPE:
  1794.  
  1795.             -    The identifier of the resulting trap is the same as for
  1796.             the notification except that its first letter is promoted to
  1797.             upper case and the prefix provided in (1) is prepended.  For
  1798.             example, "objectCreation" maps to "onObjectCreation" given
  1799.             the prefix "on".
  1800.  
  1801.             -    The VARIABLES parameter reflects all mandatory
  1802.             ATTRIBUTEs as identified in(2) and translated in (4), plus
  1803.             two variables that are always present:
  1804.             onManagedObjectInstance and onAdditionalText.
  1805.  
  1806.             -    The text of the description is the same as for the
  1807.             BEHAVIOUR DEFINED AS parameter of the corresponding
  1808.             NOTIFICATION, if any.
  1809.  
  1810.             -    The REFERENCE clause reflects the registry of the input
  1811.             NOTIFICATION, using the conventions as for machine
  1812.             readability established in subsection 2.7 above.
  1813.  
  1814.             -    The relative leg number for the output registry
  1815.             (ENTERPRISE clause) is the same as for the input registry.
  1816.  
  1817.  
  1818.             2.12.2 Discussion
  1819.  
  1820.             Limitations of this procedure reflect basic functional
  1821.             differences between the CMIP and SNMP, with much necessarily
  1822.             lost in translation.
  1823.  
  1824.             In particular, SNMP Version 1 provides no mechanism for
  1825.             filtering traps at the source, and the Internet community
  1826.             frowns on the usage of traps in any case.  Thus anyone
  1827.             translating a MIB according to this procedure should avoid
  1828.             translating NOTIFICATIONs without good reason.  Where this
  1829.             cannot be avoided, only the minimum necessary functionality
  1830.  
  1831.             Newnan             Expires August 27, 1993           Page 27
  1832.  
  1833.  
  1834.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1835.  
  1836.  
  1837.             should be carried over ---                                      and the justification for this
  1838.             should be documented.  Such decisions should be made on a
  1839.             class by class, NOTIFICATION by NOTIFICATION and even
  1840.             ATTRIBUTE by ATTRIBUTE basis. While translated DMI
  1841.             NOTIFICATIONs are provided here for the sake of
  1842.             completeness, it may never be appropriate to use some of
  1843.             these traps.
  1844.  
  1845.             The method described in the preceding subsection can be
  1846.             mechanized.  However, at best this will provide the human
  1847.             translator with default options and a point of departure for
  1848.             making hard choices.
  1849.  
  1850.             The mapping of all ATTRIBUTE syntaxes to scalar types
  1851.             simplifies mapping of identifiers and facilitates auto
  1852.             registry.  Notwithstanding, this approach can in certain
  1853.             cases be ugly and even unworkable.  However, that seems to
  1854.             be the case for any deterministic procedure.  Human judgment
  1855.             and intervention will often be required.
  1856.  
  1857.             Consider for example the following.  One could deal with
  1858.             optional syntax by defining different variables for
  1859.             reporting all optional forms.  At the same time one could
  1860.             define "null" values for each variable.  Variables for all
  1861.             options could then be passed in a trap message, with exactly
  1862.             one of them non-empty.
  1863.  
  1864.             However, specification of null values is messy and does not
  1865.             lend itself to automation. This also complicates assignment
  1866.             of identifiers and arcs, since there is a one-to-many
  1867.             mapping.  Furthermore, passing of empty parameters is
  1868.             inefficient and complicates the work of a manager, which
  1869.             must determine which variable is "real."  In any case, this
  1870.             approach does not address multi-valued ATTRIBUTEs ---                                                                 only
  1871.             CHOICEs.
  1872.  
  1873.             For the translated DMI NOTIFICATIONs of Appendix B, multi-
  1874.             valued ATTRIBUTEs are dealt with(as necessary) by issuing
  1875.             separate traps for each attribute value. This is perhaps not
  1876.             unreasonable for a default approach.  For example, it might
  1877.             be appropriate for reporting certain kinds of ATTRIBUTE
  1878.             change such as state changes.  However, this approach should
  1879.             be used VERY, VERY SPARINGLY if at all.
  1880.  
  1881.             The onAdditionalInformation field provides a place to put
  1882.             additional information otherwise lost in translation (e.g.,
  1883.             non-mandatory or multi-valued ATTRIBUTE values).  The
  1884.             implementor should populate this field with self-defining
  1885.             information that can easily be understood by operations
  1886.             personnel.
  1887.  
  1888.             The onManagedObjectInstance variable is used in lieu of the
  1889.             ManagedObjectClass and ManagedObjectInstance parameters
  1890.             provided by CMIP.
  1891.  
  1892.             Newnan             Expires August 27, 1993           Page 28
  1893.  
  1894.  
  1895.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1896.  
  1897.  
  1898.             2.13 Translation of Delete Operations
  1899.  
  1900.  
  1901.             2.13.1 RFC 1212 Advice
  1902.  
  1903.             Nonetheless, it is highly useful to provide a means whereby
  1904.             a conceptual row may be removed from a table. In MIB-II,
  1905.             this was achieved by defining, for each conceptual row, an
  1906.             integer-value columnar object.  If a management station sets
  1907.             the value of this object to some value, usually termed
  1908.             "invalid," then the effect is one of invalidating the
  1909.             corresponding row in the table.  However, it is an
  1910.             implementation-specific matter as to whether an agent
  1911.             removes an invalidated entry from the table.  Accordingly,
  1912.             management stations must be prepared to receive tabular
  1913.             information from agents that corresponds to entries not
  1914.             currently in use.  Proper interpretation of such entries
  1915.             requires examination of the columnar object indicating the
  1916.             in-use status.
  1917.  
  1918.  
  1919.             2.13.2 Discussion
  1920.  
  1921.             To simplify mechanized translation, the DELETE operation is
  1922.             provided for all tables, rather than trying to determine
  1923.             which ones support manager-initiated DELETE operations.
  1924.  
  1925.  
  1926.             2.14 Translation of Create Operations
  1927.  
  1928.  
  1929.             2.14.1 RFC 1212 Advice
  1930.  
  1931.             It is also highly useful to have a clear understanding of
  1932.             how a conceptual row may be added to a table.  In Internet,
  1933.             at the protocol level, a management station issues an SNMP
  1934.             set operation containing an arbitrary set of variable
  1935.             bindings.  In the case that an agent detects that one or
  1936.             more of those variable bindings refers to an object instance
  1937.             not currently available in that agent, it may, according to
  1938.             the rules of the SNMP, behave according to any of the
  1939.             following paradigms:
  1940.  
  1941.             (1)  It may reject the SNMP set operation as referring to
  1942.             non-existent object instances by returning a response with
  1943.             the error-status field set to "noSuchName" and the error-
  1944.             index field set to refer to the first vacuous reference.
  1945.  
  1946.             (2)  It may accept the SNMP set operation as requesting the
  1947.             creation  of new object instances corresponding to each of
  1948.             the object instances named in the variable bindings. The
  1949.             value of each (potentially) newly created object instance is
  1950.             specified by the "value" component of the relevant variable
  1951.             binding.  In this case, if the request specifies a value for
  1952.  
  1953.             Newnan             Expires August 27, 1993           Page 29
  1954.  
  1955.  
  1956.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  1957.  
  1958.  
  1959.             a newly (or previously) created object that it deems
  1960.             inappropriate by reason of value orsyntax, then it rejects
  1961.             the SNMP set operation by responding with the error-status
  1962.             field set to badValue and the error-index field set to refer
  1963.             to the first offending variable binding.
  1964.  
  1965.             (3)  It may accept the SNMP set operation and create new
  1966.             object instances as described in (2) above and, in addition,
  1967.             at its discretion, create supplemental object instances to
  1968.             complete a row in a conceptual table of which the new object
  1969.             instances specified in the request may be a part.
  1970.  
  1971.             It should be emphasized that all three of the above
  1972.             behaviors are fully conformant to the SNMP specification and
  1973.             are fully acceptable, subject to any restrictions which may
  1974.             be imposed by access control and/or the definitions of the
  1975.             MIB objects themselves.
  1976.  
  1977.  
  1978.             2.14.2 Additional Constraints
  1979.  
  1980.             Be very sparing in allowing Internet manager initiated
  1981.             object creation.   A table of parents and a table of name
  1982.             bindings are provided in the ISO/CCITT Convergence MIB so
  1983.             that a parent can be specified when creating an object.
  1984.  
  1985.  
  1986.             2.14.3 Discussion
  1987.  
  1988.             To create an object mapping into the ISO/CCITT world
  1989.             requires that its parent be known, hence the parent table.
  1990.             A child table is also provided to allow general navigation
  1991.             of the MIB tree.  The name binding table is necessary to
  1992.             determine the object identifier associated with each
  1993.             parent/child binding.
  1994.  
  1995.             An SNMP SetRequest needs to contain enough information to
  1996.             create an internally consistent object from the ISO/CCITT
  1997.             perspective.  The SNMP PDU size restriction could be a
  1998.             problem here.
  1999.  
  2000.  
  2001.             3 Constraints on SNMP Usage
  2002.  
  2003.             The following constraints apply when using SNMP with a MIB
  2004.             translated by this procedure.
  2005.  
  2006.             Editor's Note: [In this draft, the term "SNMP" implies
  2007.             SNMPv1. Support for SNMPv2 is to be added in the next
  2008.             draft.]
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.             Newnan             Expires August 27, 1993           Page 30
  2015.  
  2016.  
  2017.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2018.  
  2019.  
  2020.             3.1 Approach
  2021.  
  2022.             The following assumptions about use of the SNMP are made to
  2023.             facilitate MIB translation:
  2024.  
  2025.             -    The management station will expect that conditional
  2026.             attributes may not be present on a per conceptual row basis
  2027.             and will act appropriately, e.g., use GetNextRequest to test
  2028.             for presence.
  2029.  
  2030.             -    The management station will expect that access actually
  2031.             granted may be less than stated in the MIB specification due
  2032.             to dynamic access controls; in such cases it may receive
  2033.             error-status of readOnly ---                                        even for an SNMP GetRequest.
  2034.  
  2035.             -    A management station creating a new entry in a class or
  2036.             side table must first acquire an appropriate index for doing
  2037.             so.  This is accomplished by reading a value from the
  2038.             appropriate row of the ocNextUniqueIndexTable provided in
  2039.             the "ISO/CCITT Convergence MIB" (see Appendix B subsection
  2040.             2).  The index of this table is an object ID, i.e., the ID
  2041.             of one of the tables generated by this algorithm. The output
  2042.             (reading the ocNextUniqueIndex conceptual column of the
  2043.             indicated conceptual row) is a unique integer subidentifier
  2044.             to be used for creating a new conceptual row in the table of
  2045.             interest.  Typically, a different value is returned each
  2046.             time an ocNextUniqueIndex column is read.
  2047.  
  2048.             The subidentifier returned by ocNextUniqueIndex is
  2049.             guaranteed to be unique within its table within an agent.
  2050.  
  2051.             -    Creation of a class or side table entry requires that
  2052.             the associated SNMP SetRequest PDU include:
  2053.  
  2054.                  * a valid pre-allocated subidentifier for that table,
  2055.  
  2056.                  * initial values for those attributes that must be
  2057.                  present (which however may be allowed to default). and
  2058.  
  2059.                  * in the case of a class table entry, class entry
  2060.                  instance of a valid parent object to be inserted in the
  2061.                  parent table.
  2062.  
  2063.                  If any of these conditions are not met, noSuchName
  2064.                  error-status is returned.
  2065.  
  2066.             -    If  a management station attempts to delete an object
  2067.             or attribute value for which deletion is not permitted (for
  2068.             any reason) error-status of readOnly is returned.
  2069.  
  2070.             -    A management station must be prepared to receive
  2071.             badValue error-status when a SetRequest operation attempts
  2072.             to set an attribute to a value inconsistent with other
  2073.  
  2074.  
  2075.             Newnan             Expires August 27, 1993           Page 31
  2076.  
  2077.  
  2078.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2079.  
  2080.  
  2081.             attribute values according to the object's BEHAVIOR or
  2082.             PERMITTED VALUES specifications.
  2083.  
  2084.  
  2085.             3.2 Discussion
  2086.  
  2087.             To support create operations requires that the manager
  2088.             somehow supply a unique subidentifier.  Rather than sub-
  2089.             allocate index ranges to different managers or administer
  2090.             pools on a per-table basis, it seems simplest to have a
  2091.             generic pool administered by the agent on behalf of all
  2092.             managers.
  2093.  
  2094.             As regards error-status values, a "bending" of the rules of
  2095.             SNMP is necessary to map functionality not really supported
  2096.             in the protocol.  Thus an off-the-shelf manager should be
  2097.             able to interoperate with an agent that implements a
  2098.             translated MIB but usage of the PDUs will not be entirely
  2099.             conventional.  This is particularly true for usage of error-
  2100.             status.
  2101.  
  2102.  
  2103.             4 Summary
  2104.  
  2105.             Given certain assumptions about the use of SNMP (section 3)
  2106.             and the ancillary ISO/CCITT Convergence MIB (appendix B),
  2107.             this procedure allows mechanized translation of most
  2108.             functionality found in ISO/CCITT MIBs to the world of SNMP.
  2109.  
  2110.             The algorithm preserves basic capability to navigate
  2111.             ISO/CCITT object relationships, i.e.,
  2112.  
  2113.             -  Location of parents (immediately containing objects),
  2114.  
  2115.             -  Location of children (immediately  contained objects),
  2116.             and
  2117.  
  2118.             -  Location of referenced objects.
  2119.  
  2120.             This approach preserves the capability to create new object
  2121.             instances and attribute values, even for generic network
  2122.             models that subsume multiple computer systems and network
  2123.             elements.
  2124.  
  2125.             Areas in which significant functionality is lost in
  2126.             translation include:
  2127.  
  2128.             -  Notification: a minimalistic set of capabilities are
  2129.             provided for basic notifications in the ISO/CCITT
  2130.             Convergence MIB.  No attempt is made to provide for
  2131.             filtering or logging of notifications.
  2132.  
  2133.             -  Actions:  these must be dealt with manually, on a case by
  2134.             case basis.
  2135.  
  2136.             Newnan             Expires August 27, 1993           Page 32
  2137.  
  2138.  
  2139.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2140.  
  2141.  
  2142.             -  Scoping and filtering: only rudimentary tools are
  2143.             provided for navigating the translated MIB's using SNMP.
  2144.  
  2145.  
  2146.             5 Acknowledgments
  2147.  
  2148.             The editor wishes to express gratitude to Keith McCloghrie
  2149.             for his extremely timely and expert assistance with the U S
  2150.             West Trouble Administration translation effort, also, to Ken
  2151.             Hunter of Hewlett-Packard Company and Al Vincent of U S WEST
  2152.             Communications, Inc. who translated the MIB and made it
  2153.             work. These efforts served as input to the original
  2154.             contribution on which this document is based.
  2155.  
  2156.             In addition, the following individuals have contributed to
  2157.             this effort.
  2158.  
  2159.             Bob Aronoff         - NIST
  2160.             Jon Biggar          - NetLabs
  2161.             Mary Brady          - NIST
  2162.             April Chang         - NetLabs
  2163.             Jock Embry          - Opening Technologies
  2164.             Paul Golick         - IBM
  2165.             Pramod Kalyanas     - University of Delaware
  2166.             Lee LaBarre         - The MITRE Corporation
  2167.             David Liu           - Northern Telecom, Inc
  2168.             Owen Newnan         - U S West Advanced Technologies
  2169.             Steve Ng            - MPR Teltech
  2170.             Yasuhiro Ohara      - NTT
  2171.             George Pavlou       - UCL
  2172.             Lisa Phifer         - Bellcore
  2173.             Tom Rutt            - AT&T
  2174.             Mark Smith          - Hewlett-Packard
  2175.             Einar Stefferud     - Network Management Associates, Inc.
  2176.             Dean Voiss          - NetLabs
  2177.             Yoshi Yamashita     - NKK Corporation
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.             Newnan             Expires August 27, 1993           Page 33
  2198.  
  2199.  
  2200.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2201.  
  2202.  
  2203.             References
  2204.  
  2205.             [ISO8824] ISO/IEC IS 8824: Information Technology- Open
  2206.             System Interconnection - Specification of Abstract Syntax
  2207.             Notation One(ASN.1),1990.
  2208.  
  2209.             [ISO8825] ISO/IEC IS 8825: Information Technology - Open
  2210.             System Interconnection-Specification of Basic Encoding Rules
  2211.             for Abstract Syntax Notation One (ASN.1),1990.
  2212.  
  2213.             [ISO7498-4] ISO/IEC IS 7498-4, Information Processing
  2214.             Systems - Open Systems Interconnection -Basic Reference
  2215.             Model Part 4 - Management Framework, 1989.
  2216.  
  2217.             [ISO9595] ISO/IEC IS 9595, Information Technology - Open
  2218.             System Interconnection- Common Management Information
  2219.             Service Definition, 1991.
  2220.  
  2221.             [ISO9596-1] ISO/IEC IS 9596-1, Information Technology - Open
  2222.             Systems Interconnection- Common Management Information
  2223.             Protocol - Part 1: Specification, 1991.
  2224.  
  2225.             [ISO10165-1] ISO/IEC IS 10165-1: Information Technology -
  2226.             Open Systems Interconnection - Structure of Management
  2227.             Information - Part 1: Management Information Model, 1991.
  2228.  
  2229.             [ISO10165-2] ISO/IEC IS 10165-2: Information Technology -
  2230.             Open Systems Interconnection -Structure of Management
  2231.             Information - Part 2: Definition of Management Information,
  2232.             1992.
  2233.  
  2234.             [ISO10165-4] ISO/IEC IS 10165-4: Information Technology -
  2235.             Open Systems Interconnection -Structure of Management
  2236.             Information - Part 4: Guidelines for the Definition of
  2237.             Managed Objects, 1991.
  2238.  
  2239.             [RFC1052] RFC 1052, Cerf, V., IAB Recommendations for the
  2240.             Development of Internet Network Management Standards, April
  2241.             1988.
  2242.  
  2243.             [RFC1109] RFC 1109, Cerf, V., Report of the Second Ad Hoc
  2244.             Network Management Review Group, August 1989.
  2245.  
  2246.             [RFC1155] RFC 1155, M. Rose and K. McCloghrie, Structure and
  2247.             Identification of Management Information for TCP/IP based
  2248.             internets, May 1990.
  2249.  
  2250.             [RFC1157] RFC 1157, J.D. Case, M.S. Fedor, M.L. Schoffstall,
  2251.             C. Davin, Simple Network Management Protocol (SNMP), May
  2252.             1990.
  2253.  
  2254.             [RFC1212] RFC1212, M. Rose, K. McCloghrie - Editors, Concise
  2255.             MIB Definitions, March 1991.
  2256.  
  2257.  
  2258.             Newnan             Expires August 27, 1993           Page 34
  2259.  
  2260.  
  2261.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2262.  
  2263.  
  2264.             [RFC1213] Network Management of TCP/IP-based internets: MIB-
  2265.             II, March 1991.
  2266.  
  2267.             [RFC1214] RFC1214, L. LaBarre - editor, OSI Internet
  2268.             Management: Management Information Base, April 1991.
  2269.  
  2270.             [RFC1215] RFC1215, M. Rose - Editor, Management A convention
  2271.             for Defining Traps for use with the SNMP, March 1991.
  2272.  
  2273.             [RFC1353] RFC1353, K. McCloghrie, J.R. Davin, J.M. Galvin,
  2274.             Definitions of Managed Objects for SNMP Parties, July 1992.
  2275.  
  2276.             [SNMPv2COEX] J.D. Case, K. McCloghrie, M.T. Rose,
  2277.             S.L.Waldbusser, Coexistence between version 1 and version 2
  2278.             of the Internet Network Management Framework, Internet-
  2279.             draft, December 1992.
  2280.  
  2281.             [SNMPv2PROT] J.D. Case, K. McCloghrie, M.T. Rose,
  2282.             S.L.Waldbusser, Protocol Operations for version 2 of the
  2283.             Simple Network Management Protocol (SNMPv2), Internet-draft,
  2284.             January 1992.
  2285.  
  2286.             [SNMPv2SMI] J.D. Case, K. McCloghrie, M.T. Rose,
  2287.             S.L.Waldbusser, Structure of Management Information for
  2288.             version 2 of the Simple Network Management Protocol
  2289.             (SNMPv2), Internet-draft, December 1992.
  2290.  
  2291.             [SNMPv2MIB] J.D. Case, K. McCloghrie, M.T. Rose,
  2292.             S.L.Waldbusser, Management Information Base for version 2 of
  2293.             the Simple Network Management Protocol (SNMPv2), Internet-
  2294.             draft, December 1992.
  2295.  
  2296.             [SNMPv2TC] J.D. Case, K. McCloghrie, M.T. Rose,
  2297.             S.L.Waldbusser, Textual Conventions for version 2 of the
  2298.             Simple Network Management Protocol (SNMPv2), Internet-draft,
  2299.             December 1992.
  2300.  
  2301.             [SNMPv2ADMIN]  J.R. Davin, J.M. Galvin, K.McCloghrie,
  2302.             Administrative Model for version 2 of the Simple Network
  2303.             Management Protocol (SNMPv2), Internet-Draft, January 1993.
  2304.  
  2305.             [SNMPv2SEC] J.M. Galvin, K. McCloghrie, J.R. Davin, Security
  2306.             Protocols for version 2 of the Simple Network Management
  2307.             Protocol (SNMPv2), Internet-Draft, January 1993.
  2308.  
  2309.             [SNMPv2TM] J.D. Case, K. McCloghrie, M.T. Rose, S.L. Waldbusser,
  2310.             Transport Mappings for version 2 of the Simple Network
  2311.             Management Protocol (SNMPv2), Internet-Draft, January 1993.
  2312.  
  2313.             [SNMPv2PARTY] J.D. Case, K. McCloghrie, M.T. Rose,S.L.
  2314.             Waldbusser, Party MIB for version 2 of the Simple Network
  2315.             Management Protocol (SNMPv2), Internet-Draft, January 1993.
  2316.  
  2317.  
  2318.  
  2319.             Newnan             Expires August 27, 1993           Page 35
  2320.  
  2321.  
  2322.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2323.  
  2324.  
  2325.             [IIMCIMIBTRANS] ISO/CCITT and Internet Management
  2326.             Coexistence (IIMC): Translation of Internet MIBs to
  2327.             ISO/CCITT GDMO MIBs, Draft 1 March 26,1993.
  2328.  
  2329.             [IIMCMIB-II] ISO/CCITT and Internet Management Coexistence
  2330.             (IIMC): Translation of Internet MIB-II (RFC1213) to
  2331.             ISO/CCITT GDMO MIB, Draft 1, March 26, 1993.
  2332.  
  2333.             [IIMCPROXY] ISO/CCITT and Internet Management Coexistence
  2334.             (IIMC): ISO/CCITT to Internet Management Proxy, Draft 1,
  2335.             March, 1993 [to be distributed].
  2336.  
  2337.             [IIMCSEC] ISO/CCITT and Internet Management Coexistence
  2338.             (IIMC): ISO/CCITT to Internet Management Security, Draft 1,
  2339.             March 26, 1993.
  2340.  
  2341.             [NMFMC92] NM Forum and X/Open, ISO/CCITT and Internet
  2342.             Management: Coexistence and Interworking Strategy, October,
  2343.             1992.
  2344.  
  2345.             [T1M192] ANSI T1M1.5, Operations, Administration and
  2346.             Provisioning (OAM&P)---                                   Services for Interfaces between
  2347.             Operations Systems across Jurisdictional Boundaries to
  2348.             support Fault Management ---                                        Trouble Administration,
  2349.             T1LB.262R3-1991, January 13, 1992.
  2350.  
  2351.             [USWE92] U S WEST Communications, Inc., U S WEST Network
  2352.             Interface Specification---                                      MEDIACC Trouble Administration
  2353.             (TA), Document Number 77302,* Issue A, May 1992.
  2354.  
  2355.             * U S WEST Business Resources, Inc., Manager---                                                          Information
  2356.             Release, 1801 California St., Room 1340, Denver CO 80202;
  2357.             303 298 0117.
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.             Newnan             Expires August 27, 1993           Page 36
  2381.  
  2382.  
  2383.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2384.  
  2385.  
  2386.             Appendix A Abridged Example
  2387.  
  2388.             Following is a fairly brief example that illustrates some
  2389.             but not all aspects of the translation procedure.
  2390.  
  2391.             The reader can find a more comprehensive example of MIB
  2392.             translation in [T1M192] and [USWE92], from which
  2393.             specifications this abridged example is adapted.   The
  2394.             reader will note that this example is highly abridged and
  2395.             differs in some other respects from those two
  2396.             specifications.
  2397.  
  2398.             Editor's Note: [This example is intended to be updated with
  2399.             an example that more fully illustrates these translation
  2400.             procedures (possibly another OMNIPoint 1 MIB, or, at
  2401.             minimum, the OMNIPoint 1 version of the ANSI T1M1 Trouble
  2402.             MIB).]
  2403.  
  2404.  
  2405.             A.1 Input ISO/CCITT Management Information Base
  2406.  
  2407.             troubleReport MANAGED OBJECT CLASS
  2408.             DERIVED FROM "T1M1":top;   -- ANSI T1M1 variant of top
  2409.             CHARACTERIZED BY
  2410.             troubleReportPkg PACKAGE
  2411.                     ATTRIBUTES
  2412.                     cancelRequestedByManager GET-REPLACE
  2413.                       DEFAULT VALUE
  2414.  
  2415.             TroubleModule.troubleReportCancelRequestedByManagerDefault,
  2416.                     managedObjectInstance GET,
  2417.                     receivedTime GET,
  2418.                     troubleFound GET;
  2419.  
  2420.             NOTIFICATIONS
  2421.                     "Rec. X.721 | ISO/IEC 10165-2 :
  2422.             1992":objectCreation,
  2423.                     "Rec. X.721 | ISO/IEC 10165-2 :
  2424.             1992":objectDeletion,
  2425.                     "T1LB-91-263R1":troubleHistoryEventNotification;;;
  2426.  
  2427.             CONDITIONAL PACKAGES
  2428.             troubleReportaccessTimeLocationListPkg PACKAGE
  2429.                     ATTRIBUTES
  2430.                     accessTimeLocationList GET-REPLACE;;
  2431.                     PRESENT IF "an instance supports it.,",
  2432.  
  2433.             troubleReportperceivedTroubleSeverityPkg PACKAGE
  2434.                     ATTRIBUTES
  2435.                     perceivedTroubleSeverity GET-REPLACE;;
  2436.                     PRESENT IF "an instance supports it.";
  2437.  
  2438.             REGISTERED AS { trMObjectClass 5};
  2439.  
  2440.  
  2441.             Newnan             Expires August 27, 1993           Page 37
  2442.  
  2443.  
  2444.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2445.  
  2446.  
  2447.             accessTimeLocationList ATTRIBUTE
  2448.                     WITH ATTRIBUTE SYNTAX
  2449.                       TroubleModule.ServiceLocationList;
  2450.                     BEHAVIOUR
  2451.                       accessTimeLocationListBehaviour BEHAVIOUR
  2452.                         DEFINED AS
  2453.             "The Access Time Location list attribute identifies the set
  2454.             or subset of service locations for which the Location Access
  2455.             Hours attribute values are valid.";
  2456.                         ;
  2457.                     REGISTERED AS { trAttribute 2};
  2458.  
  2459.             cancelRequestedByManager ATTRIBUTE
  2460.                     WITH ATTRIBUTE SYNTAX
  2461.                       TroubleModule.CancelRequestedByManager;
  2462.                     MATCHES FOR EQUALITY;
  2463.                     BEHAVIOUR
  2464.                       cancelRequestedByManagerBehaviour BEHAVIOUR
  2465.                         DEFINED AS
  2466.             "The Cancel Requested By Manager attribute indicates whether
  2467.             the manager has initiated the process to cancel a Trouble
  2468.             Report.";
  2469.                         ;
  2470.                     REGISTERED AS {trAttribute 12};
  2471.  
  2472.             managedObjectInstance ATTRIBUTE
  2473.                     WITH ATTRIBUTE SYNTAX
  2474.                       TroubleModule.ManagedObjectInstance;
  2475.                     MATCHES FOR EQUALITY;
  2476.                     BEHAVIOUR
  2477.                       managedObjectInstanceBehaviour BEHAVIOUR
  2478.             DEFINED AS
  2479.             "The Managed Object Instance attribute indicates the CNM
  2480.             Service object class instance or the GNM telecommunications
  2481.             network resource instance associated with a particular
  2482.             trouble report instance.";
  2483.                         ;
  2484.                     REGISTERED AS {trAttribute 29};
  2485.  
  2486.             perceivedTroubleSeverity ATTRIBUTE
  2487.                     WITH ATTRIBUTE SYNTAX
  2488.                       TroubleModule.PerceivedTroubleSeverity;
  2489.                     MATCHES FOR EQUALITY;
  2490.                     BEHAVIOUR
  2491.                       perceivedTroubleSeverityBehaviour BEHAVIOUR
  2492.                         DEFINED AS
  2493.             "The Perceived Trouble Severity attribute allows the manager
  2494.             to indicate the effect of the trouble on the managed object
  2495.             being reported.";
  2496.                         ;
  2497.                     REGISTERED AS {trAttribute 32};
  2498.  
  2499.             receivedTime ATTRIBUTE
  2500.                     WITH ATTRIBUTE SYNTAX TroubleModule.ReceivedTime;
  2501.  
  2502.             Newnan             Expires August 27, 1993           Page 38
  2503.  
  2504.  
  2505.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2506.  
  2507.  
  2508.                     MATCHES FOR ORDERING;
  2509.                     BEHAVIOUR
  2510.                       receivedTimeBehaviour BEHAVIOUR
  2511.                         DEFINED AS
  2512.             "The Received Time attribute indicates the date and time
  2513.             when a trouble report was entered.";
  2514.                         ;
  2515.                     REGISTERED AS {trAttribute 33};
  2516.  
  2517.             troubleFound ATTRIBUTE
  2518.                     WITH ATTRIBUTE SYNTAX TroubleModule.TroubleFound;
  2519.                     BEHAVIOUR
  2520.                       troubleFoundBehaviour BEHAVIOUR
  2521.             DEFINED AS
  2522.             "The Trouble Found attribute specifies an enumerated code
  2523.             value, which identifies the problem resolved.  This field
  2524.             will be copied into the trouble history information.";
  2525.                         ;
  2526.                     REGISTERED AS {trAttribute 45};
  2527.  
  2528.  
  2529.  
  2530.             troubleHistoryEventNotification NOTIFICATION
  2531.             WITH  INFORMATION SYNTAX
  2532.                      TroubleModule.TroubleHistoryInfo;
  2533.             REGISTERED AS                   {trNotification 1};
  2534.  
  2535.  
  2536.  
  2537.             TroubleModule DEFINITIONS ::=
  2538.             -- TroubleModule {...troubleModule(x)}
  2539.             BEGIN
  2540.  
  2541.             IMPORTS
  2542.  
  2543.             AdditionalTroubleInfo,
  2544.             CancelRequestedByManger,
  2545.             CloseoutVerification,
  2546.             CommitmentTime,
  2547.             PerceivedTroubleSeverity,
  2548.             TroubleFound,
  2549.             TroubleReportNumberList,
  2550.             TroubleType              FROM GNMTA
  2551.  
  2552.             ObjectInstance           FROM CMIP-1  {joint-iso-ccitt
  2553.             ms(9) cmip(1)  modules(0)  protocol(3)};
  2554.  
  2555.             trMObjectClass OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  2556.             usa(840) ansi-t1-227-1992(10015) trGNM(0) objectClass(3) }
  2557.  
  2558.             trAttribute OBJECT IDENTIFIER ::=  { iso(1) member-body(2)
  2559.             usa(840) ansi-t1-227-1992(10015) trGNM(0) attribute(7) }
  2560.  
  2561.  
  2562.  
  2563.             Newnan             Expires August 27, 1993           Page 39
  2564.  
  2565.  
  2566.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2567.  
  2568.  
  2569.             trNotification OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  2570.             usa(840) ansi-t1-228-1992(10016) trGNM(0) notification(10) }
  2571.  
  2572.             CancelRequestedByManager ::= BOOLEAN
  2573.             ManagedObjectInstance ::= ObjectInstance
  2574.             PerceivedTroubleSeverity ::= INTEGER {
  2575.                     outOfService(0),
  2576.                     backInService(1),
  2577.                     serviceAffectingTrouble(2),
  2578.                     nonServiceAffectingTrouble(3)
  2579.             }
  2580.             PremisesAddress ::= PrintableString(SIZE(128))
  2581.             PremisesName ::= PrintableString(SIZE(64))
  2582.             ReceivedTime ::= GeneralizedTime
  2583.             ServiceLocationList ::= SET OF SEQUENCE{
  2584.                     PremisesName,
  2585.                     PremisesAddress
  2586.             }
  2587.             TroubleFound ::= CHOICE{
  2588.                  number INTEGER {
  2589.                  pending(0),
  2590.                  cameClear(1),
  2591.                  centralOffice(2),
  2592.                  customerPremisesEquipment(3),
  2593.                  facility(4),
  2594.                  interexchangeCarrier(5),
  2595.                  information(6),
  2596.                  nonplanClassified(7),
  2597.                  noTroubleFound(8),
  2598.                  station(9),
  2599.                  servingBureau(10),
  2600.                  testOK(11),
  2601.                  publicServicesCoinSet(12),
  2602.                  otherStationEquipment(13),
  2603.                  stationWiring(14),
  2604.                  centralOfficeFacility(15),
  2605.                  customerOperatingInstructions(16),
  2606.                  testedOKVerifiedOK(17),
  2607.                  coFacilityTestedFoundOK(18),
  2608.                  outsideFacilityTestedFoundOK(19),
  2609.                  referredOutToOtherDept(20),
  2610.                  protectiveConnectingArrang(21),
  2611.                  cpeCustomerResponsibility(22)
  2612.             },
  2613.             identifier OBJECT IDENTIFIER
  2614.             }
  2615.             troubleReportCancelRequestedByManagerDefault BOOLEAN ::=
  2616.             FALSE
  2617.  
  2618.             -- Supporting Productions
  2619.  
  2620.             TroubleAdministrationFunctionalUnits ::=  BIT STRING
  2621.             {
  2622.             fm-ta-kernel                    (0),
  2623.  
  2624.             Newnan             Expires August 27, 1993           Page 40
  2625.  
  2626.  
  2627.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2628.  
  2629.  
  2630.             fm-ta-req-trb-rpt-format        (1),
  2631.             fm-ta-trb-hist-evt- notif       (2),
  2632.             fm-ta-rev-trb-hist-recd         (3),
  2633.             fm-ta-add-trb-info              (4),
  2634.             fm-ta-trb-rpt-up-notif          (5),
  2635.             fm-ta-enrol-deenrol-notif       (6),
  2636.             fm-ta-ver-trb-rep-comp          (7),
  2637.             fm-ta-mod-trb-adm-info          (8)
  2638.             }
  2639.  
  2640.             TroubleHistoryInfo ::=  SEQUENCE{
  2641.                  managedObjectInstance    [0]  ObjectInstance,
  2642.                  receivedTime             [1]  GeneralizedTime,
  2643.                  troubleFound             [2]  TroubleFound,
  2644.                  additionalTroubleInfo    [3]  AdditionalTroubleInfo
  2645.                                                OPTIONAL,
  2646.                  cancelRequestedByManager [4]  CancelRequestedByManager
  2647.                                                OPTIONAL,
  2648.                  closeOutNarr             [5]  PrintableString OPTIONAL,
  2649.                  closeoutVerification     [6]  CloseoutVerification
  2650.                                                OPTIONAL,
  2651.                  commitmentTime           [7]  CommitmentTime OPTIONAL,
  2652.                  custTroubleTicketNumber  [8]  PrintableString
  2653.                                                OPTIONAL,
  2654.                  perceivedTroubleSeverity [9]  PerceivedTroubleSeverity
  2655.                                                OPTIONAL,
  2656.                  restoredTime             [10] GeneralizedTime OPTIONAL,
  2657.                  troubleReportNumberList  [11] TroubleReportNumberList 
  2658.                                                OPTIONAL,
  2659.                  troubleType              [12] TroubleType OPTIONAL
  2660.             }
  2661.  
  2662.             END
  2663.  
  2664.  
  2665.  
  2666.             A.2 Output Internet MIB Macros
  2667.  
  2668.             T1MODULE DEFINITIONS ::= BEGIN
  2669.             IMPORTS OBJECT-TYPE, Counter FROM RFC1155-SMI;
  2670.  
  2671.  
  2672.             t1TATroubleReportTable  OBJECT-TYPE
  2673.             --   class table
  2674.                            SYNTAX SEQUENCE OF
  2675.             T1TATroubleReportTableEntry
  2676.                            ACCESS  not-accessible
  2677.                            STATUS  mandatory
  2678.                            DESCRIPTION
  2679.                                 "t1TATroubleReport class table."
  2680.                            REFERENCE "trMObjectClass 5"
  2681.                                     ::= { t1TA 5 }
  2682.  
  2683.             t1TATroubleReportTableEntry     OBJECT-TYPE
  2684.  
  2685.             Newnan             Expires August 27, 1993           Page 41
  2686.  
  2687.  
  2688.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2689.  
  2690.  
  2691.             --   class (table) entry
  2692.                            SYNTAX   T1TATroubleReportTableEntry
  2693.                            ACCESS  not-accessible
  2694.                            STATUS  mandatory
  2695.                            DESCRIPTION
  2696.                                 "t1TATroubleReportTable  instance"
  2697.                                         INDEX  { t1TATroubleReportIndex
  2698.             }
  2699.                            ::= { t1TATroubleReportTable 1 }
  2700.  
  2701.              T1TATroubleReportTableEntry   ::= SEQUENCE {
  2702.                       t1TATroubleReportDelete
  2703.                                      INTEGER,
  2704.                       t1TATroubleReportIndex
  2705.                                      INTEGER,
  2706.                       t1TATroubleReportCancelRequestedByManager
  2707.                                      INTEGER,
  2708.                       t1TATroubleReportManagedObjectInstance
  2709.                                      OBJECT IDENTIFIER,
  2710.                       t1TATroubleReportReceivedTime
  2711.                                      DisplayString,
  2712.                       t1TATroubleReportTroubleFoundNumber
  2713.                                      INTEGER,
  2714.                       t1TATroubleReportTroubleFoundIdentifier
  2715.                                      OBJECT IDENTIFIER,
  2716.                       t1TATroubleReportPerceivedTroubleSeverity
  2717.                                      INTEGER
  2718.                                     }
  2719.  
  2720.             t1TATroubleReportDelete   OBJECT-TYPE
  2721.             --   class entry delete indicator
  2722.                            SYNTAX  INTEGER
  2723.                            ACCESS  write-only
  2724.                            STATUS  mandatory
  2725.             DESCRIPTION
  2726.             "When set to zero, the corresponding entry of
  2727.             thet1TATroubleReportTable is deleted."
  2728.                                     ::= { t1TATroubleReportTableEntry 1
  2729.             }
  2730.  
  2731.             t1TATroubleReportIndex      OBJECT-TYPE
  2732.             --   class entry index
  2733.                                     SYNTAX  INTEGER
  2734.                            ACCESS  not-accessible
  2735.                            STATUS  mandatory
  2736.                            DESCRIPTION
  2737.                                 "Distinguishes unique entries of
  2738.                                 t1TATroubleReportTable"
  2739.                                     ::= { t1TATroubleReportTableEntry 2
  2740.             }
  2741.  
  2742.             -- Consistent with the current ANSI GNM, there are no
  2743.             -- attributes associated with TOP.
  2744.             -- there is one level of derivation for TroubleReport, arc
  2745.  
  2746.             Newnan             Expires August 27, 1993           Page 42
  2747.  
  2748.  
  2749.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2750.  
  2751.  
  2752.             -- numbering commences at 2+10= 12 rounded up to the
  2753.             -- nearest multiple of ten, i.e., with arc number 20:
  2754.  
  2755.             t1TATroubleReportCancelRequestedByManager  OBJECT-TYPE
  2756.             --   class table conceptual column
  2757.                                     SYNTAX  INTEGER
  2758.                            ACCESS  read-write
  2759.                            STATUS  mandatory
  2760.                            DESCRIPTION
  2761.             "The Cancel Requested By Manager attribute indicates whether
  2762.             the manager has initiated the process to cancel a Trouble
  2763.             Report."
  2764.                            REFERENCE "trAttribute 12"
  2765.                            --  the following corresponds to a DEFAULT  
  2766.                            --  VALUE OF
  2767.                            --
  2768.             troubleReportCancelRequestedByManagerDefault
  2769.                            -- BOOLEAN ::=  FALSE DEFVAL { 0 }
  2770.                         ::= { t1TATroubleReportTableEntry 20 }
  2771.  
  2772.             t1TATroubleReportManagedObjectInstance OBJECT-TYPE
  2773.             -- recall that ObjectInstance maps to class entry instance
  2774.  
  2775.                            SYNTAX  OBJECT IDENTIFIER
  2776.                            ACCESS  read-only
  2777.                            STATUS  mandatory
  2778.                            DESCRIPTION
  2779.             "The Managed Object Instance attribute indicates the CNM
  2780.             Service object class instance or the GNM telecommunications
  2781.             network resource instance associated with a particular
  2782.             trouble report instance."
  2783.                            REFERENCE "trAttribute 29"
  2784.                                   ::= { t1TATroubleReportTableEntry 21 }
  2785.  
  2786.             t1TATroubleReportReceivedTime  OBJECT-TYPE
  2787.                             SYNTAX  DisplayString
  2788.                            ACCESS  read-only
  2789.                            STATUS  mandatory
  2790.                            DESCRIPTION
  2791.             "The Received Time attribute indicates the date and time
  2792.             when a trouble report was entered."
  2793.                            REFERENCE "trAttribute 33"
  2794.                                   ::= { t1TATroubleReportTableEntry 22 }
  2795.  
  2796.             -- Note that t1TATroubleReportAccessTimeLocationList is not
  2797.             -- assigned arc 23 because it is implemented as a side table
  2798.             -- due to its multivalued, complex syntax; see below.
  2799.  
  2800.             -- Exactly one of the following two choices will be present
  2801.             -- for a given table entry. These are enumerated in-line (in
  2802.             -- the class table) rather than in a side table because the
  2803.             -- syntax cannot be multi-valued.
  2804.  
  2805.             t1TATroubleReportTroubleFoundNumber OBJECT-TYPE
  2806.  
  2807.             Newnan             Expires August 27, 1993           Page 43
  2808.  
  2809.  
  2810.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2811.  
  2812.  
  2813.                            SYNTAX  INTEGER {
  2814.                            pending(32767),-- value of zero not permitted
  2815.                            cameClear(1),
  2816.                            centralOffice(2),
  2817.                            customerPremisesEquipment(3),
  2818.                            facility(4),
  2819.                            interexchangeCarrier(5),
  2820.                            information(6),
  2821.                            nonplanClassified(7),
  2822.                            noTroubleFound(8),
  2823.                            station(9),
  2824.                            servingBureau(10),
  2825.                            testOK(11),
  2826.                            publicServicesCoinSet(12),
  2827.                            otherStationEquipment(13),
  2828.                            stationWiring(14),
  2829.                            centralOfficeFacility(15),
  2830.                            customerOperatingInstructions(16),
  2831.                            testedOKVerifiedOK(17),
  2832.                            coFacilityTestedFoundOK(18),
  2833.                            outsideFacilityTestedFoundOK(19),
  2834.                            referredOutToOtherDept(20),
  2835.                            protectiveConnectingArrang(21),
  2836.                            cpeCustomerResponsibility(22)
  2837.                            }
  2838.                            ACCESS  read-only
  2839.                            STATUS  mandatory
  2840.                            DESCRIPTION
  2841.             "The Trouble Found attribute specifies an enumerated code
  2842.             value, which identifies the problem resolved.  This field
  2843.             will be copied into the trouble history information."
  2844.                            REFERENCE "trAttribute 45"
  2845.                                    ::= { t1TATroubleReportTableEntry 23}
  2846.  
  2847.             t1TATroubleReportTroubleFoundIdentifier  OBJECT-TYPE
  2848.                            SYNTAX  OBJECT IDENTIFIER
  2849.                            ACCESS  read-only
  2850.                            STATUS  mandatory
  2851.                  DESCRIPTION
  2852.             "The Trouble Found attribute specifies an enumerated code
  2853.             value, which identifies the problem resolved.  This field
  2854.             will be copied into the trouble history information."
  2855.                             REFERENCE "trAttribute 45"
  2856.                                    ::= { t1TATroubleReportTableEntry 24}
  2857.  
  2858.             t1TATroubleReportPerceivedTroubleSeverity  OBJECT-TYPE
  2859.                                     SYNTAX INTEGER {
  2860.                                    outOfService(32767),
  2861.                                    backInService(1),
  2862.                                    serviceAffectingTrouble(2),
  2863.                                    nonServiceAffectingTrouble(3)
  2864.                                    }
  2865.                            ACCESS  read-write
  2866.                            STATUS  mandatory
  2867.  
  2868.             Newnan             Expires August 27, 1993           Page 44
  2869.  
  2870.  
  2871.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2872.  
  2873.  
  2874.                            DESCRIPTION
  2875.             "The Perceived Trouble Severity attribute allows the manager
  2876.             to indicate the effect of the trouble on the managed object
  2877.             being reported"
  2878.                            REFERENCE "trAttribute 32"
  2879.                                    ::= { t1TATroubleReportTableEntry 25}
  2880.  
  2881.             -- the following is a side table because it is translated
  2882.             -- from a multi-valued attribute:
  2883.  
  2884.             t1TATroubleReportAccessTimeLocationListTable   OBJECT-TYPE
  2885.             --   side table
  2886.                            SYNTAX  SEQUENCE OF
  2887.  
  2888.                  T1TATroubleReportAccessTimeLocationListTableEntry
  2889.                             ACCESS  not-accessible
  2890.                            STATUS  mandatory
  2891.  
  2892.                            -- this attribute is in a conditional package
  2893.                            -- thus the table may be empty
  2894.  
  2895.             DESCRIPTION
  2896.             "The Access Time Location list attribute identifies the set
  2897.             or subset of service locations for which the Location
  2898.             Access Hours attribute values are valid."
  2899.  
  2900.                            REFERENCE "trAttribute 2"
  2901.                                     ::= { t1TATroubleReport 2 }
  2902.  
  2903.             t1TATroubleReportAccessTimeLocationListTableEntry OBJECT-
  2904.             TYPE
  2905.             --   side table entry
  2906.  
  2907.                  SYNTAX
  2908.             T1TATroubleReportAccessTimeLocationListTableEntry
  2909.                  ACCESS  not-accessible
  2910.                  STATUS  mandatory
  2911.                  DESCRIPTION
  2912.  
  2913.                  "t1TATroubleReportAccessTimeLocationListTable entry."
  2914.                  INDEX  {
  2915.                       t1TATroubleReportAccessTimeLocationListClassIndex,
  2916.                       t1TATroubleReportAccessTimeLocationListValueIndex
  2917.                       }
  2918.                  ::= { t1TATroubleReportAccessTimeLocationListTable 1 }
  2919.  
  2920.             T1TATroubleReportAccessTimeLocationListTableEntry
  2921.                  ::=    SEQUENCE {
  2922.                  t1TATroubleReportAccessTimeLocationListDelete
  2923.                            INTEGER,
  2924.                  t1TATroubleReportAccessTimeLocationListClassIndex
  2925.                            INTEGER,      
  2926.                  t1TATroubleReportAccessTimeLocationListValueIndex
  2927.                            INTEGER,
  2928.  
  2929.             Newnan             Expires August 27, 1993           Page 45
  2930.  
  2931.  
  2932.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2933.  
  2934.  
  2935.                  t1TATroubleReportAccessTimeLocationListPremisesName
  2936.                            DisplayString,
  2937.                  t1TATroubleReportAccessTimeLocationListPremisesAddress
  2938.                            DisplayString
  2939.                                     }
  2940.  
  2941.             t1TATroubleReportAccessTimeLocationListDelete OBJECT-TYPE
  2942.             --   side table delete indication
  2943.                            SYNTAX  INTEGER
  2944.                            ACCESS  write-only
  2945.                            STATUS  mandatory
  2946.                            DESCRIPTION
  2947.             "When set to zero, the corresponding entry of the access
  2948.             timelocation list table is deleted."
  2949.             ::= { t1TATroubleReportAccessTimeLocationListTableEntry 1 }
  2950.  
  2951.             t1TATroubleReportAccessTimeLocationListClassIndex OBJECT-
  2952.             TYPE
  2953.             --   side table class index
  2954.                            SYNTAX  INTEGER
  2955.                            ACCESS  not-accessible
  2956.                            STATUS  mandatory
  2957.                            DESCRIPTION
  2958.             "Has same value as class entry index of managed object."
  2959.             ::= { t1TATroubleReportAccessTimeLocationListTableEntry 2 }
  2960.  
  2961.             t1TATroubleReportAccessTimeLocationListValueIndex OBJECT-
  2962.             TYPE
  2963.             --   side table value index
  2964.                            SYNTAX  INTEGER
  2965.                            ACCESS  not-accessible
  2966.                            STATUS  mandatory
  2967.                            DESCRIPTION
  2968.             "Uniquely discriminates a value of
  2969.             t1TATroubleReportAccessTimeLocationList within a managed
  2970.             object"
  2971.             ::= { t1TATroubleReportAccessTimeLocationListTableEntry 3 }
  2972.  
  2973.             t1TATroubleReportAccessTimeLocationListPremisesName
  2974.                            OBJECT-TYPE
  2975.                            SYNTAX  DisplayString
  2976.                            ACCESS  read-write
  2977.                            STATUS  mandatory
  2978.                            DESCRIPTION
  2979.             "The access time for a service location list premises name."
  2980.             ::= { t1TATroubleReportAccessTimeLocationListTableEntry 20 }
  2981.  
  2982.             t1TATroubleReportAccessTimeLocationListPremisesAddress
  2983.                            OBJECT-TYPE
  2984.                            SYNTAX  DisplayString
  2985.                            ACCESS  read-write
  2986.                            STATUS  mandatory
  2987.                            DESCRIPTION
  2988.  
  2989.  
  2990.             Newnan             Expires August 27, 1993           Page 46
  2991.  
  2992.  
  2993.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  2994.  
  2995.  
  2996.             "The access time for a service location list premises
  2997.             address."
  2998.             ::= { t1TATroubleReportAccessTimeLocationListTableEntry 21 }
  2999.  
  3000.             END
  3001.  
  3002.  
  3003.  
  3004.  
  3005.  
  3006.             Appendix B ISO/CCITT Convergence MIB
  3007.  
  3008.             This appendix has two subsections (parts):
  3009.  
  3010.             (1)  Translation of DMI Notifications to Traps.  An
  3011.             informative part that explains how (to what extent) standard
  3012.             Definition of Management Information (ISO/IEC IS 10165-2)
  3013.             notifications are mapped to SNMP traps.  This example
  3014.             provides guidance as to how other traps might be mapped,
  3015.             although that should be avoided where possible.
  3016.  
  3017.             (2)  ISO/CCITT Convergence---                                         ASN.1 Definitions.  A normative
  3018.             part that provides the translated MIB developed per part
  3019.             (1).
  3020.  
  3021.  
  3022.             B.1. Translation of DMI Notifications to Traps
  3023.  
  3024.             This subsection documents the translation of DMI
  3025.             notifications to traps per steps described in subsection
  3026.             2.12.
  3027.  
  3028.             The decisions per step (1) are to select the output subtrees
  3029.             onSMI2toInternetNotification and
  3030.             onSMI2toInternetAttributeID, and the prefix "on".
  3031.  
  3032.             Table B-1 reflects the listing of notifications per the
  3033.             procedures of step (2).  The abbreviations used for
  3034.             mandatory attributes in this table are defined in Table B-2.
  3035.  
  3036.             Table B-2 itself provides the mapping of ISO/CCITT syntaxes
  3037.             to fixed and scalar types per step (3).  This illustrates
  3038.             the complexity of the problem and need for human judgment.
  3039.  
  3040.  
  3041.  
  3042.  
  3043.  
  3044.  
  3045.  
  3046.  
  3047.  
  3048.  
  3049.  
  3050.  
  3051.             Newnan             Expires August 27, 1993           Page 47
  3052.  
  3053.  
  3054.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3055.  
  3056.  
  3057.             --------------------------------------------------------
  3058.             leg notification         syntax              mandatory
  3059.                                                          attributes
  3060.             --------------------------------------------------------
  3061.             1  attributeValue-       AttributeValue-     avcd
  3062.                  Change                   ChangeInfo
  3063.             2  communicationsAlarm   AlarmInfo           pc,ps
  3064.             3  environmentalAlarm    AlarmInfo           pc,ps
  3065.             4  equipmentAlarm        AlarmInfo           pc,ps
  3066.             5  integrityViolation    SecurityAlarmInfo   sac,sas,sad,
  3067.                                                          su,spv
  3068.             6  objectCreation        ObjectInfo          (none)
  3069.             7  objectDeletion        ObjectInfo          (none)
  3070.             8  operational-          SecurityAlarmInfo   sac,sas,sad,
  3071.                  Violation                               su,spv
  3072.             9  physicalViolation     SecurityAlarmInfo   sac,sas,sad,
  3073.                                                          su,spv
  3074.             10 processingErrorAlarm  AlarmInfo           pc,ps
  3075.             11 qualityOfServiceAlarm AlarmInfo           pc,ps
  3076.             12 relationshipChange    Relationship-       rcd
  3077.                                      ChangeInfo
  3078.             13 securityServiceOr-    SecurityAlarmInfo   sac,sas,sad,
  3079.                  MechanismViolation                      su,spv
  3080.             14 stateChange           StateChangeInfo     scd
  3081.             15 timeDomainViolation   SecurityAlarmInfo   sac,sas,sad,
  3082.                                                          su,spv
  3083.             -------------------------------------------------
  3084.                            Figure B-1.  DMI Notifications
  3085.  
  3086.  
  3087.  
  3088.  
  3089.  
  3090.  
  3091.  
  3092.  
  3093.  
  3094.  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.  
  3108.  
  3109.  
  3110.  
  3111.  
  3112.             Newnan             Expires August 27, 1993           Page 48
  3113.  
  3114.  
  3115.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3116.  
  3117.  
  3118.             -------------------------------------------------
  3119.             leg  abbreviation
  3120.             attribute identifier/syntax resolves to
  3121.             -------------------------------------------------
  3122.             10   avci
  3123.             attributeValueChangeDefinition/AttributeValueChangeDefinition
  3124.  
  3125.             18   pc
  3126.             probableCause/ProbableCause
  3127.  
  3128.             17   ps
  3129.             perceivedSeverity/PerceivedSeverity
  3130.  
  3131.             20   rcd
  3132.             relationshipChangeDefinition/AttributeValueChangeDefinition
  3133.  
  3134.             21   sac
  3135.             securityAlarmCause/ProbableCause
  3136.  
  3137.             22   sad
  3138.             securityAlarmDetector/SecurityAlarmDetector
  3139.  
  3140.             23   sas
  3141.             securityAlarmSeverity/SecurityAlarmSeverity
  3142.  
  3143.             28   scd
  3144.             stateChangeDefinition/AttributeValueChangeDefinitiion
  3145.  
  3146.             24   spv
  3147.             serviceProvider/ServiceUser
  3148.  
  3149.             25   su
  3150.             serviceUser/ServiceUser
  3151.             -------------------------------------------------
  3152.                           Figure B-2.  Mandatory Attributes
  3153.  
  3154.  
  3155.             The latter half of subsection B.2 provides the output of
  3156.             steps (4) and (5).
  3157.  
  3158.  
  3159.  
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166.  
  3167.  
  3168.  
  3169.  
  3170.  
  3171.  
  3172.  
  3173.             Newnan             Expires August 27, 1993           Page 49
  3174.  
  3175.  
  3176.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3177.  
  3178.  
  3179.             --------------------------------------------------------
  3180.             The format of this table is as follows:
  3181.             < identifier > ::= < OSI Syntax > 
  3182.             =>   < resulting SNMP Syntax >
  3183.             [Comments]
  3184.             --------------------------------------------------------
  3185.             AttributeValueChangeDefinition::=SET OF SEQUENCE {
  3186.                  attributeID      AttributeId,
  3187.                  oldAttributeValue
  3188.                       [1] ANY DEFINED BY attributeID OPTIONAL,
  3189.                  newAttributeValue  [2] ANY DEFINED BY attributeID}
  3190.             =>   OBJECT IDENTIFIER
  3191.             [Maps to OBJECT IDENTIFIER for conceptual row of ATTRIBUTE
  3192.             within class table or of side table.  The oldAttributeValue
  3193.             is optional thus not supported. The new value can be gotten
  3194.             through polling.]
  3195.             --------------------------------------------------------
  3196.              PerceivedSeverity ::= ENUMERATED{ indeterminate(0),
  3197.                  critical (1), major (2), minor (3), warning (4),
  3198.                  cleared (5)  }
  3199.             =>   INTEGER
  3200.             [Enumerated values are carried over except that zero maps to
  3201.             32767.]
  3202.             --------------------------------------------------------
  3203.             ProbableCause  ::=  CHOICE  {
  3204.                  globalValue       OBJECT IDENTIFIER,
  3205.                  localValue        INTEGER}
  3206.             =>   OBJECT IDENTIFIER
  3207.             [The localValue is option is supported by suffixing the
  3208.             integer value to the special OBJECT IDENTIFIER,
  3209.             onSMI2toInternetIntegerForm.]
  3210.             --------------------------------------------------------
  3211.             SecurityAlarmDetector::=   CHOICE {
  3212.                  mechanism      [0]   OBJECT IDENTIFIER,
  3213.                  object         [1]  ObjectInstance,
  3214.                  application    [2]   AE-title} 
  3215.             =>   OBJECT IDENTIFIER
  3216.             [ObjectInstance maps to OID (class entry instance ) and
  3217.             mechanism OID is passed through unaltered; there is no
  3218.             ambiguity between the two.  AE Title is an alien construct
  3219.             to the internet community.  This option should be supported
  3220.             via an empty OID and descriptive text in the
  3221.             ocAdditionalInformation variable.]
  3222.             --------------------------------------------------------
  3223.             ServiceUser ::= SEQUENCE {
  3224.                     identifier       OBJECT IDENTIFIER,
  3225.                     details          ANY DEFINED BY identifier }
  3226.             =>   DisplayString
  3227.             [ANYs are deprecated for SNMP.  A text string provides a
  3228.             reasonable way to map this general notion.]
  3229.             -------------------------------------------------Figure B-3.
  3230.                       Mapping of ISO/CCITT Syntaxes to Scalars
  3231.  
  3232.  
  3233.  
  3234.             Newnan             Expires August 27, 1993           Page 50
  3235.  
  3236.  
  3237.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3238.  
  3239.  
  3240.             B.2  ISO/CCITT Convergence---                                         ASN.1 Definitions
  3241.  
  3242.             ISOCCITTCONVERGENCE DEFINITIONS ::= BEGIN
  3243.             IMPORTS OBJECT-TYPE, Counter FROM RFC1155-SMI;
  3244.  
  3245.             -- Following is an ISO/CCITT Convergence MIB.
  3246.             -- The purpose of this MIB is to
  3247.             -- facilitate ISO/CCITT GDMO to Internet MIB translation.
  3248.             -- It has two primary features:
  3249.  
  3250.             --   (1) Relationship Management Convergence Group:
  3251.             --   Parent, child and other tables that facilitate
  3252.             --   navigation of containment relationships.  These
  3253.             --   objects belong to one managed object group
  3254.             --   that must be supported by any agent for which
  3255.             --   conformance to this specification is claimed.
  3256.  
  3257.             --   (2) Mapping of common notifications to traps. Each trap
  3258.             --   listed is a separate unit of conformance and thus its
  3259.             --   own object group.
  3260.  
  3261.             -- *********************************************************
  3262.             -- Relationship Management Convergence Group
  3263.             -- *********************************************************
  3264.  
  3265.             -- The following table enables manager creation of
  3266.             -- class entry instances:
  3267.  
  3268.             -- Editor's Note: [The object ocNextLocallyUniqueIndex
  3269.             -- and ocNextLocallyUniqueIndex have been replaced in
  3270.             -- this draft with the ocNextUniqueIndexTable, which
  3271.             -- allows the agent to allocate indices on a per-class
  3272.             -- basis.  Thus the manager need not determine whether
  3273.             -- a class is implemented locally or globally.
  3274.             -- Reviewer comment on this approach would be
  3275.             -- appreciated.]
  3276.  
  3277.             ocNextUniqueIndexTable OBJECT-TYPE
  3278.                  SYNTAX SEQUENCE OF OcNextUniqueIndexEntry
  3279.                  ACCESS not-accessible
  3280.                  STATUS mandatory
  3281.                  DESCRIPTION
  3282.             "Provides a class table or side table index for purposes of
  3283.             manager-initiated creation of rows in tables (i.e., new
  3284.             managed object instances or new values for multi-valued
  3285.             attributes).  Successive reads to this table return
  3286.             different values that are unique within the scope of the
  3287.             table within the agent.  Such values are assigned
  3288.             arbitrarily by the agent, so a manager should make no
  3289.             assumption about the
  3290.             sequence or magnitude of values which will be returned."
  3291.             ::= { ocObjectCreation 1 }
  3292.  
  3293.             ocNextUniqueIndexEntry OBJECT-TYPE
  3294.  
  3295.             Newnan             Expires August 27, 1993           Page 51
  3296.  
  3297.  
  3298.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3299.  
  3300.  
  3301.                  SYNTAX OcNextUniqueIndexEntry
  3302.                  ACCESS not-accessible
  3303.                  STATUS mandatory
  3304.                  DESCRIPTION
  3305.                       "Entry of ocNextUniqueIndexTable."
  3306.                  INDEX { ocNextUniqueIndexIndex }
  3307.             ::= { ocNextUniqueIndexTable 1 }
  3308.  
  3309.             OcNextUniqueIndexEntry ::=
  3310.                  SEQUENCE {
  3311.                       ocNextUniqueIndexIndex   OBJECT IDENTIFIER,
  3312.                       ocNextUniqueIndex        INTEGER
  3313.                  }
  3314.  
  3315.             ocNextUniqueIndexIndex OBJECT-TYPE
  3316.                  SYNTAX OBJECT IDENTIFIER
  3317.                  ACCESS not-accessible
  3318.                  STATUS mandatory
  3319.                  DESCRIPTION
  3320.             "Provides the class or side table ID of the table for which
  3321.             a conceptual row is to be created."
  3322.             ::= { ocNextUniqueIndexEntry 1 }
  3323.  
  3324.             ocNextUniqueIndex OBJECT-TYPE
  3325.                  SYNTAX INTEGER
  3326.                  ACCESS read-only
  3327.                  STATUS mandatory
  3328.                  DESCRIPTION
  3329.             "Returns the next index to be used for creation of a
  3330.             conceptual row in the indicated table.  This read-only
  3331.             object
  3332.             returns different values each time it is read."
  3333.             ::= { ocNextUniqueIndexEntry 2 }
  3334.  
  3335.  
  3336.             -- Following is the parent table;
  3337.             -- given the class table entry of an
  3338.             -- object, it yields the class table entry for that
  3339.             -- object's parent (immediately containing) object.
  3340.  
  3341.             ocParentTable OBJECT-TYPE
  3342.                  SYNTAX SEQUENCE OF OcParentTableEntry
  3343.                  ACCESS not-accessible
  3344.                  STATUS mandatory
  3345.                  DESCRIPTION
  3346.             "Allows parents in the ISO/CCITT Management naming hierarchy
  3347.             to be determined.
  3348.             INDEX  is OBJECT IDENTIFIER,  i.e., class entry instance ."
  3349.             ::= { ocObjectCreation 2 }
  3350.  
  3351.             ocParentTableEntry OBJECT-TYPE
  3352.                  SYNTAX OcParentTableEntry
  3353.                  ACCESS not-accessible
  3354.                  STATUS mandatory
  3355.  
  3356.             Newnan             Expires August 27, 1993           Page 52
  3357.  
  3358.  
  3359.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3360.  
  3361.  
  3362.                  DESCRIPTION
  3363.                       "Entry of parent table."
  3364.                  INDEX { ocParent  }
  3365.             ::= { ocParentTable 1 }
  3366.  
  3367.             OcParentTableEntry ::=
  3368.                  SEQUENCE {
  3369.                       ocParentTableIndex  OBJECT IDENTIFIER,
  3370.                       ocParent            OBJECT IDENTIFIER
  3371.                  }
  3372.  
  3373.             ocParentTableIndex OBJECT-TYPE
  3374.                  SYNTAX OBJECT IDENTIFIER
  3375.                  ACCESS not-accessible
  3376.                  STATUS mandatory
  3377.                  DESCRIPTION
  3378.             "Provides the class table entry of the object in question."
  3379.             ::= { ocParentTableEntry 1 }
  3380.  
  3381.             ocParent OBJECT-TYPE
  3382.                  SYNTAX OBJECT IDENTIFIER
  3383.                  ACCESS read-write
  3384.                  STATUS mandatory
  3385.                  DESCRIPTION
  3386.             "Provides the class table entry of the parent.  A manager
  3387.             can only set this value when creating a new instance of a
  3388.             managed object class, and only for those object classes for
  3389.             which manager-initiated instance creation is allowed. An
  3390.             empty value is returned for TOP."
  3391.             ::= { ocParentTableEntry 2 }
  3392.  
  3393.             -- Following is the child table; given the class table
  3394.             -- instance of an object, it yields a list of class table
  3395.             -- instances for objects immediately subordinate to that
  3396.             -- object.
  3397.  
  3398.             ocChildTable OBJECT-TYPE
  3399.                  SYNTAX SEQUENCE OF OcChildTableEntry
  3400.                  ACCESS not-accessible
  3401.                  STATUS mandatory
  3402.                  DESCRIPTION
  3403.             "Allows children in the ISO/CCITT Management naming
  3404.             hierarchy to be determined."
  3405.             ::= { ocObjectCreation 3 }
  3406.  
  3407.             ocChildTableEntry OBJECT-TYPE
  3408.                  SYNTAX OcChildTableEntry
  3409.                  ACCESS not-accessible
  3410.                  STATUS mandatory
  3411.                  DESCRIPTION
  3412.                       "Entry of Child table."
  3413.                  INDEX  { ocParentOfChild, ocChild }
  3414.             ::= { ocChildTable 1 }
  3415.  
  3416.  
  3417.             Newnan             Expires August 27, 1993           Page 53
  3418.  
  3419.  
  3420.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3421.  
  3422.  
  3423.             OcChildTableEntry ::= SEQUENCE {
  3424.                  ocParentOfChild OBJECT IDENTIFIER,
  3425.                  ocChild INTEGER
  3426.             }
  3427.  
  3428.             ocParentOfChild OBJECT-TYPE
  3429.                  SYNTAX OBJECT IDENTIFIER
  3430.                  ACCESS read-only
  3431.                  STATUS mandatory
  3432.                  DESCRIPTION
  3433.                       "Provides the class table entry of the parent."
  3434.             ::= { ocChildTableEntry 1 }
  3435.  
  3436.             ocChild OBJECT-TYPE
  3437.                  SYNTAX OBJECT IDENTIFIER
  3438.                  ACCESS read-only
  3439.                  STATUS mandatory
  3440.                  DESCRIPTION
  3441.             "This parameter is typically used in conjunction with a get
  3442.             next operation to acquire class table entries for successive
  3443.             child (contained) objects, given the parent.  If this value
  3444.             is zero, the first child in the list is returned.  If it
  3445.             is a class prefix, the first child in the given class is
  3446.             returned.  If it is the full class table entry, the class
  3447.             table entry of the next higher child is returned. "
  3448.             ::= {ocChildTableEntry 2}
  3449.  
  3450.             -- Following is the NAME BINDING table.  It allows the  NAME
  3451.             -- BINDING OBJECT IDENTIFIER of an object instance to be
  3452.             -- gotten or set (can be set only on object creation).
  3453.  
  3454.             ocNameBindingTable OBJECT-TYPE
  3455.                  SYNTAX SEQUENCE OF OcNameBindingTableEntry
  3456.                  ACCESS not-accessible
  3457.                  STATUS mandatory
  3458.                  DESCRIPTION
  3459.             "Allows the NAME BINDING registration to be specified on
  3460.             object creation, or fetched for an existing class entry
  3461.             instance.."
  3462.             ::= { ocObjectCreation 4 }
  3463.  
  3464.             ocNameBindingTableEntry OBJECT-TYPE
  3465.                  SYNTAX OcNameBindingTableEntry
  3466.                  ACCESS not-accessible
  3467.                  STATUS mandatory
  3468.                  DESCRIPTION
  3469.                       "Entry of name binding table."
  3470.                  INDEX  { ocObjectBound  } -- class entry instance
  3471.             ::= { ocNameBindingTable 1 }
  3472.  
  3473.             OcNameBindingTableEntry::= SEQUENCE{
  3474.                       ocObjectBound            OBJECT IDENTIFIER,
  3475.                       ocNameBindingRegistry    OBJECT IDENTIFIER
  3476.                  }
  3477.  
  3478.             Newnan             Expires August 27, 1993           Page 54
  3479.  
  3480.  
  3481.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3482.  
  3483.  
  3484.  
  3485.             ocObjectBound OBJECT-TYPE
  3486.                  SYNTAX OBJECT IDENTIFIER
  3487.                  ACCESS not-accessible
  3488.                  STATUS mandatory
  3489.                  DESCRIPTION
  3490.             "Provides the class entry instance  of the object in
  3491.             question."
  3492.             ::= { ocNameBindingTableEntry 1 }
  3493.  
  3494.             ocNameBindingRegistry OBJECT-TYPE
  3495.                  SYNTAX OBJECT IDENTIFIER
  3496.                  ACCESS read-write
  3497.                  STATUS mandatory
  3498.                  DESCRIPTION
  3499.             "Provides the Name binding registration on object creation
  3500.             and can also be fetched.  A manager can only set this value
  3501.             when creating a new instance of a managed object class, and
  3502.             only for those object classes for which manager-initiated
  3503.             instance creation is allowed."
  3504.             ::= { ocNameBindingTableEntry 2 }
  3505.  
  3506.  
  3507.  
  3508.             -- *********************************************************
  3509.             -- Managed Object Groups and Trap for DMI Notifications
  3510.             -- *********************************************************
  3511.  
  3512.             -- Following are SNMP mappings of the standard DMI
  3513.             -- NOTIFICATIONS.  Each of these traps and OBJECT-TYPES
  3514.             -- may be implemented independent of the others,
  3515.             -- thus constituting its own managed object group.
  3516.  
  3517.             -- It is recommended these mappings to traps be used
  3518.             -- very sparingly.  Where their use
  3519.             -- is necessary, the following "standard"
  3520.             -- traps be used where applicable:
  3521.  
  3522.             onAttributeValueChange TRAP-TYPE
  3523.                  ENTERPRISE onSMI2toInternetNotification
  3524.                  VARIABLES {
  3525.                       onManagedObjectInstance,
  3526.                       onAdditionalText,
  3527.                       onAttributeValueChangeDefinition
  3528.                       }
  3529.                  DESCRIPTION
  3530.                       "This notification type is used to report changes
  3531.                       to the attribute such as addition or deletion of
  3532.                       members to one or more set valued attributes,
  3533.                       replacement of the value of one or more attributes
  3534.                       and setting attribute values to their defaults."
  3535.                  REFERENCE "ISO 10165-2: smi2Notification 1"
  3536.             ::=     1
  3537.  
  3538.  
  3539.             Newnan             Expires August 27, 1993           Page 55
  3540.  
  3541.  
  3542.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3543.  
  3544.  
  3545.             onCommunicationsAlarm TRAP-TYPE
  3546.                  ENTERPRISE onSMI2toInternetNotification
  3547.                  VARIABLES {
  3548.                       onManagedObjectInstance,
  3549.                       onAdditionalText,
  3550.                       onProbableCause,
  3551.                       onPerceivedSeverity
  3552.                       }
  3553.                  DESCRIPTION
  3554.                       "This notification type is used to report when the
  3555.                       object detects a communications error."
  3556.                  REFERENCE "ISO 10165-2: smi2Notification 2"
  3557.             ::=     2
  3558.  
  3559.             onEnvironmentalAlarm TRAP-TYPE
  3560.                  ENTERPRISE onSMI2toInternetNotification
  3561.                  VARIABLES {
  3562.                       onManagedObjectInstance,
  3563.                       onAdditionalText,
  3564.                       onProbableCause,
  3565.                       onPerceivedSeverity
  3566.                       }
  3567.                  DESCRIPTION
  3568.                       "This notification type is used to report  a
  3569.                       problem in the environment."
  3570.                  REFERENCE "ISO 10165-2: smi2Notification 3"
  3571.             ::=     3
  3572.  
  3573.             onEquipmentAlarm TRAP-TYPE
  3574.                  ENTERPRISE onSMI2toInternetNotification
  3575.                  VARIABLES {
  3576.                       onManagedObjectInstance,
  3577.                       onAdditionalText,
  3578.                       onProbableCause,
  3579.                       onPerceivedSeverity
  3580.                       }
  3581.                  DESCRIPTION
  3582.                       "This notification type is used to report  a
  3583.                       failure in the equipment."
  3584.                  REFERENCE "ISO 10165-2: smi2Notification 4"
  3585.             ::=     4
  3586.  
  3587.             onIntegrityViolation TRAP-TYPE
  3588.                  ENTERPRISE onSMI2toInternetNotification
  3589.                  VARIABLES {
  3590.                       onManagedObjectInstance,
  3591.                       onAdditionalText,
  3592.                       onSecurityAlarmCause,
  3593.                       onSecurityAlarmDetector,
  3594.                       onSecurityAlarmSeverity,
  3595.                       onServiceProvider,
  3596.                       onServiceUser
  3597.                       }
  3598.                  DESCRIPTION
  3599.  
  3600.             Newnan             Expires August 27, 1993           Page 56
  3601.  
  3602.  
  3603.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3604.  
  3605.  
  3606.                  "This notification is used to report that a
  3607.                  potential interruption in information flow
  3608.                  has occurred such that information may have been
  3609.                  illegally modified, inserted or deleted"
  3610.                  REFERENCE "ISO 10165-2: smi2Notification 5"
  3611.             ::=     5
  3612.  
  3613.             onObjectCreation TRAP-TYPE
  3614.                  ENTERPRISE onSMI2toInternetNotification
  3615.                  VARIABLES{
  3616.                       onManagedObjectInstance,
  3617.                       onAdditionalText
  3618.                       }
  3619.                  DESCRIPTION
  3620.                       "This notification type is used to report the
  3621.                       creation of a managed object to another
  3622.                       open system."
  3623.                  REFERENCE "ISO 10165-2: smi2Notification 6"
  3624.             ::=     6
  3625.  
  3626.             onObjectDeletion TRAP-TYPE
  3627.                  ENTERPRISE onSMI2toInternetNotification
  3628.                  VARIABLES{
  3629.                       onManagedObjectInstance,
  3630.                       onAdditionalText
  3631.                       }
  3632.                  DESCRIPTION
  3633.                       "This notification type is used to report the
  3634.                       deletion of a managed object to another
  3635.                       open system."
  3636.                  REFERENCE "ISO 10165-2: smi2Notification 7"
  3637.             ::=     7
  3638.  
  3639.             onOperationalViolation TRAP-TYPE
  3640.                  ENTERPRISE onSMI2toInternetNotification
  3641.                  VARIABLES {
  3642.                       onManagedObjectInstance,
  3643.                       onAdditionalText,
  3644.                       onSecurityAlarmCause,
  3645.                       onSecurityAlarmDetector,
  3646.                       onSecurityAlarmSeverity,
  3647.                       onServiceProvider,
  3648.                       onServiceUser
  3649.                       }
  3650.                  DESCRIPTION
  3651.                       "This notification is used to report that the
  3652.                       provision of the requested service was not
  3653.                       possible due to the unavailability, malfunction or
  3654.                       incorrect invocation of the service"
  3655.                  REFERENCE "ISO 10165-2: smi2Notification 8"
  3656.             ::=     8
  3657.  
  3658.             onPhysicalViolation TRAP-TYPE
  3659.                  ENTERPRISE onSMI2toInternetNotification
  3660.  
  3661.             Newnan             Expires August 27, 1993           Page 57
  3662.  
  3663.  
  3664.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3665.  
  3666.  
  3667.                  VARIABLES {
  3668.                       onManagedObjectInstance,
  3669.                       onAdditionalText,
  3670.                       onSecurityAlarmCause,
  3671.                       onSecurityAlarmDetector,
  3672.                       onSecurityAlarmSeverity,
  3673.                       onServiceProvider,
  3674.                       onServiceUser
  3675.                       }
  3676.                  DESCRIPTION
  3677.                       "This notification is used to report that a
  3678.                       physical resource has been violated in a way
  3679.                       that indicates a potential security attack"
  3680.                  REFERENCE "ISO 10165-2: smi2Notification 9"
  3681.             ::=     9
  3682.  
  3683.             onProcessingErrorAlarm TRAP-TYPE
  3684.                  ENTERPRISE onSMI2toInternetNotification
  3685.                  VARIABLES {
  3686.                       onManagedObjectInstance,
  3687.                       onAdditionalText,
  3688.                       onProbableCause,
  3689.                       onPerceivedSeverity
  3690.                       }
  3691.                  DESCRIPTION
  3692.                  "This notification type is used to report processing
  3693.                  failure in a managed object."
  3694.                  REFERENCE "ISO 10165-2: smi2Notification 10"
  3695.             ::=    10
  3696.  
  3697.             onQualityOfServiceAlarm TRAP-TYPE
  3698.                  ENTERPRISE onSMI2toInternetNotification
  3699.                  VARIABLES {
  3700.                       onManagedObjectInstance,
  3701.                       onAdditionalText,
  3702.                       onProbableCause,
  3703.                       onPerceivedSeverity
  3704.                       }
  3705.                  DESCRIPTION
  3706.                  "This notification type is used to report a failure
  3707.                  in the quality of service of the managed object."
  3708.                  REFERENCE "ISO 10165-2:
  3709.             smi2Notification 11"
  3710.             ::=     11
  3711.  
  3712.             onRelationshipChange TRAP-TYPE
  3713.                  ENTERPRISE onSMI2toInternetNotification
  3714.                  VARIABLES {
  3715.                       onManagedObjectInstance,
  3716.                       onAdditionalText,
  3717.                       onRelationshipChangeDefinition
  3718.                       }
  3719.                  DESCRIPTION
  3720.                  "This notification type is used to report
  3721.  
  3722.             Newnan             Expires August 27, 1993           Page 58
  3723.  
  3724.  
  3725.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3726.  
  3727.  
  3728.                  the change in the value of a relationship
  3729.                  attributes of a managed object, that result
  3730.                  through either internal operation of the managed object
  3731.                  or via management operation."
  3732.                  -- This is a subset of ISO/CCITT functionality and
  3733.                  -- has been edited accordingly.
  3734.                  REFERENCE "ISO 10165-2: smi2Notification 12"
  3735.             ::=    12
  3736.  
  3737.             onSecurityServiceOrMechanismViolation TRAP-TYPE
  3738.                  ENTERPRISE onSMI2toInternetNotification
  3739.                  VARIABLES {
  3740.                       onManagedObjectInstance,
  3741.                       onAdditionalText,
  3742.                       onSecurityAlarmCause,
  3743.                       onSecurityAlarmDetector,
  3744.                       onSecurityAlarmSeverity,
  3745.                       onServiceProvider,
  3746.                       onServiceUser
  3747.                       }
  3748.                  DESCRIPTION
  3749.                  "This notification is used to report that a
  3750.                  security attack has been detected by a security service
  3751.                  or mechanism"
  3752.                  REFERENCE "ISO 10165-2: smi2Notification 13"
  3753.             ::=    13
  3754.  
  3755.             onStateChange TRAP-TYPE
  3756.                  ENTERPRISE onSMI2toInternetNotification
  3757.                  VARIABLES {
  3758.                       onManagedObjectInstance,
  3759.                       onAdditionalText,
  3760.                       onStateChangeDefinition
  3761.                       }
  3762.                  DESCRIPTION
  3763.                  "This notification type is used to report the change in
  3764.                  the value of a state attribute of a managed object,
  3765.                  that result through either internal operation of
  3766.                  the managed object or via management operation."
  3767.                  -- This is a subset of ISO/CCITT functionality and
  3768.                  -- the description accordingly has been manually
  3769.                  -- edited.
  3770.                  REFERENCE "ISO 10165-2: smi2Notification 14"
  3771.             ::=     14
  3772.  
  3773.             onTimeDomainViolation TRAP-TYPE
  3774.                  ENTERPRISE onSMI2toInternetNotification
  3775.                  VARIABLES {
  3776.                       onManagedObjectInstance,
  3777.                       onAdditionalText,
  3778.                       onSecurityAlarmCause,
  3779.                       onSecurityAlarmDetector,
  3780.                       onSecurityAlarmSeverity,
  3781.                       onServiceProvider,
  3782.  
  3783.             Newnan             Expires August 27, 1993           Page 59
  3784.  
  3785.  
  3786.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3787.  
  3788.  
  3789.                       onServiceUser
  3790.                       }
  3791.                  DESCRIPTION
  3792.                  "This notification is used to report that an
  3793.                  event has occurred at an unexpected or prohibited time"
  3794.                  REFERENCE "ISO 10165-2: smi2Notification 15"
  3795.             ::=     15
  3796.  
  3797.  
  3798.             -- The following objects are not accessible and exist only
  3799.             -- for purposes of mapping ISO/CCITT
  3800.             -- DMI attributes to the VARIABLES of traps.
  3801.  
  3802.             -- These objects map several kinds of DMI ATTRIBUTEs
  3803.             -- relating to NOTIFICATIONs:
  3804.  
  3805.             --        Every DMI ATTRIBUTE that is mandatory for some
  3806.             --        NOTIFICATION.
  3807.  
  3808.             --        ATTRIBUTEs eventTime and managedObjectInstance,
  3809.             --        which are always provided by CMIP.
  3810.  
  3811.             --        ATTRIBUTE additionalText, which is listed in the
  3812.             --        VARIABLES parameter for all translated
  3813.             --        NOTIFICATIONs, even though it is generally
  3814.             --        optional in ISO/CCITT usage. This allows
  3815.             --        additional information to be conveyed that might
  3816.             --        otherwise be lost when translating to SNMP
  3817.  
  3818.             -- In the DESCRIPTION clauses of these objects, the term
  3819.             -- "attribute" is used synonomously with corresponding
  3820.             -- SNMP trap VARIABLEs.
  3821.  
  3822.             onAdditionalText  OBJECT-TYPE
  3823.                  SYNTAX DisplayString
  3824.                  -- Editor's Note: [Should this be OCTET STRING?
  3825.                  -- The ISO form is GraphicString.]
  3826.                  ACCESS not-accessible
  3827.                  STATUS mandatory
  3828.                  DESCRIPTION
  3829.                  "This attribute is used to specify  additional
  3830.                  textual information in NOTIFICATIONs "
  3831.                  REFERENCE "ISO 10165-2: smi2AttributeID 7"
  3832.             ::= {onSMI2toInternetAttributeID 7}
  3833.  
  3834.             onAttributeValueChangeDefinition  OBJECT-TYPE
  3835.                  SYNTAX OBJECT IDENTIFIER
  3836.                  ACCESS not-accessible
  3837.                  STATUS mandatory
  3838.                  DESCRIPTION
  3839.                  "This attribute contains the OBJECT IDENTIFIER of
  3840.                  an ATTRIBUTE whose change has been detected."
  3841.                  -- This is a subset of ISO/CCITT functionality, as
  3842.                  -- discussed in the informational part of this annex.
  3843.  
  3844.             Newnan             Expires August 27, 1993           Page 60
  3845.  
  3846.  
  3847.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3848.  
  3849.  
  3850.                  -- The description clause is therefore entered manually
  3851.                  -- rather than copied verbatim.
  3852.                  REFERENCE "ISO 10165-2: smi2AttributeID 10"
  3853.             ::= {onSMI2toInternetAttributeID 10}
  3854.  
  3855.             onPerceivedSeverity  OBJECT-TYPE
  3856.                  SYNTAX INTEGER
  3857.                  -- indeterminate (32767), critical (1), major (2),
  3858.                  -- minor (3), warning (4), cleared (5)
  3859.                  ACCESS not-accessible
  3860.                  STATUS mandatory
  3861.                  DESCRIPTION ""
  3862.                  -- no ISO/CCITT BEHAVIOR description exists
  3863.                  REFERENCE "ISO 10165-2: smi2AttributeID 17"
  3864.             ::= {onSMI2toInternetAttributeID 17}
  3865.  
  3866.             onProbableCause  OBJECT-TYPE
  3867.                  SYNTAX OBJECT IDENTIFIER
  3868.                  ACCESS not-accessible
  3869.                  STATUS mandatory
  3870.                  DESCRIPTION ""
  3871.                  -- no ISO/CCITT BEHAVIOR description exists
  3872.                  -- defined in ISO 10164-4
  3873.                  REFERENCE "ISO 10165-2: smi2AttributeID 18"
  3874.             ::= {onSMI2toInternetAttributeID 18}
  3875.  
  3876.             onRelationshipChangeDefinition  OBJECT-TYPE
  3877.                  SYNTAX OBJECT IDENTIFIER
  3878.                  ACCESS not-accessible
  3879.                  STATUS mandatory
  3880.                  DESCRIPTION
  3881.                  "This attribute provides the OBJECT IDENTIFIER for
  3882.                  a relationship ATTRIBUTE that has changed."
  3883.                  -- This is a subset of ISO/CCITT functionality, as
  3884.                  -- discussed in the informational part of this annex.
  3885.                  -- The description clause is therefore entered manually
  3886.                  -- rather than copied verbatim.
  3887.                  REFERENCE "ISO 10165-2: smi2AttributeID 20"
  3888.             ::= {onSMI2toInternetAttributeID 20}
  3889.  
  3890.             onSecurityAlarmCause  OBJECT-TYPE
  3891.                  SYNTAX OBJECT IDENTIFIER
  3892.                  ACCESS not-accessible
  3893.                  STATUS mandatory
  3894.                  DESCRIPTION
  3895.                  "This attribute specifies the cause of the
  3896.                  security alarm"
  3897.                  REFERENCE "ISO 10165-2: smi2AttributeID 21"
  3898.             ::= {onSMI2toInternetAttributeID 21}
  3899.  
  3900.             onSecurityAlarmDetector  OBJECT-TYPE
  3901.                  SYNTAX OBJECT IDENTIFIER
  3902.                  ACCESS not-accessible
  3903.                  STATUS mandatory
  3904.  
  3905.             Newnan             Expires August 27, 1993           Page 61
  3906.  
  3907.  
  3908.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3909.  
  3910.  
  3911.                  DESCRIPTION
  3912.                  "This attribute identifies the entity that
  3913.                  detected the security alarm"
  3914.                  REFERENCE "ISO 10165-2: smi2AttributeID 22"
  3915.             ::= {onSMI2toInternetAttributeID 22}
  3916.  
  3917.             onSecurityAlarmSeverity  OBJECT-TYPE
  3918.                  SYNTAX OBJECT IDENTIFIER
  3919.                  ACCESS not-accessible
  3920.                  STATUS mandatory
  3921.                  DESCRIPTION
  3922.                  "This attribute indicates the severity of the
  3923.                  security alarm"
  3924.                  REFERENCE "ISO 10165-2: smi2AttributeID 23"
  3925.             ::= {onSMI2toInternetAttributeID 23}
  3926.  
  3927.             onServiceProvider OBJECT-TYPE
  3928.                  SYNTAX DisplayString
  3929.                  ACCESS not-accessible
  3930.                  STATUS mandatory
  3931.                  DESCRIPTION
  3932.                  "This attribute contains information about the
  3933.                  service provider associated with the service request 
  3934.                  that caused the security alarm"
  3935.                  REFERENCE "ISO 10165-2: smi2AttributeID 24"
  3936.             ::= {onSMI2toInternetAttributeID 24}
  3937.  
  3938.             onServiceUser OBJECT-TYPE
  3939.                  SYNTAX DisplayString
  3940.                  ACCESS not-accessible
  3941.                  STATUS mandatory
  3942.                  DESCRIPTION
  3943.                  "This attribute contains information about the
  3944.                  service user associated with the  service request that
  3945.                  caused the security alarm"
  3946.                  REFERENCE "ISO 10165-2: smi2AttributeID 25"
  3947.             ::= {onSMI2toInternetAttributeID 25}
  3948.  
  3949.             onStateChangeDefinition  OBJECT-TYPE
  3950.                  SYNTAX OBJECT IDENTIFIER
  3951.                  ACCESS not-accessible
  3952.                  STATUS mandatory
  3953.                  DESCRIPTION
  3954.                  "This attribute contains the OBJECT IDENTIFIER of
  3955.                  a state ATTRIBUTE that has changed."
  3956.                  -- This is a subset of ISO/CCITT functionality, as
  3957.                  -- discussed in the informational part of this annex.
  3958.                  -- The description clause is therefore entered manually
  3959.                  -- rather than copied verbatim.
  3960.                  REFERENCE "ISO 10165-2: smi2AttributeID 28"
  3961.             ::= {onSMI2toInternetAttributeID 28}
  3962.  
  3963.             onManagedObjectInstance    OBJECT-TYPE
  3964.                  SYNTAX OBJECT IDENTIFIER -- class entry instance
  3965.  
  3966.             Newnan             Expires August 27, 1993           Page 62
  3967.  
  3968.  
  3969.             Draft  Translation of ISO/CCITT MIBs to Internet MIBs 3/26/93
  3970.  
  3971.  
  3972.                  ACCESS not-accessible
  3973.                  STATUS mandatory
  3974.                  DESCRIPTION ""
  3975.                  -- Provides class entry instance  (managed object
  3976.                  -- instance) of the object issuing the notification.
  3977.                  -- This is used in lieu of the CMIP ManagedObjectClass
  3978.                  -- and ManagedObjectInstance parameters.
  3979.                  REFERENCE "ISO 10165-2: smi2AttributeID 61"
  3980.             ::= {onSMI2toInternetAttributeID 61}
  3981.  
  3982.  
  3983.             --   This document is allocated the following
  3984.             --   registration identifier for purposes of referencing
  3985.             --   material contained herein.
  3986.  
  3987.                  iimcOMIBTRANS OBJECT IDENTIFIER ::=
  3988.                                                {iimcManagementDocMan 5}
  3989.  
  3990.             --   Editor's Note: [The iimcManagementDocMan will be
  3991.             --   resolved before the final publication of this
  3992.             --   document.]
  3993.  
  3994.             --   Editor's Note: [The following arcs assignments
  3995.             --   have been fabricated in order to check syntax of
  3996.             --   this module.  It is anticipated the NMF will
  3997.             --   register appropriate arcs upon approval of this
  3998.             --   specification.]
  3999.  
  4000.             onSMI2toInternetAttributeID OBJECT IDENTIFIER  ::=
  4001.                                                { iimcOMIBTRANS 1 }
  4002.             onSMI2toInternetNotification OBJECT IDENTIFIER ::=
  4003.                                                { iimcOMIBTRANS 2 }
  4004.             onSMI2toInternetIntegerForm OBJECT IDENTIFIER      ::=
  4005.                                                { iimcOMIBTRANS 3 }
  4006.             ocObjectCreation OBJECT IDENTIFIER            ::=
  4007.                                                { iimcOMIBTRANS 4 }
  4008.  
  4009.             -- supplies integer form via object ID, the integer
  4010.             -- provided as the leg immediately subordinate to
  4011.             -- this subtree.
  4012.  
  4013.             END
  4014.  
  4015.  
  4016.  
  4017.                       INTERNET DRAFT - EXPIRES AUGUST 27, 1993
  4018.  
  4019.  
  4020.  
  4021.  
  4022.  
  4023.  
  4024.  
  4025.  
  4026.  
  4027.             Newnan             Expires August 27, 1993           Page 63
  4028.